prototype.jsでクラスを作ってみる
スポンサードリンク
prototype.jsでクラスを定義 bookmark
prototype.jsでクラスを定義すると次のようになります。
クラスを作成で紹介した、通常のJavaScriptだけの機能を使うのと定義方法が若干違ってきます。
prototype.jsでのクラス定義の解説 bookmark
まず、クラスの定義は、function では行わず、次のように、Class.create()文で行います。
var クラス名 = Class.create();
そして、中身の定義には、通常の「クラスを作成」で紹介した方法と同じですが、今回は一気にメソッドを定義する方法で定義しています。
{ } で囲んだ中身にメソッドを定義しています。
Person.prototype = { initialize : function(name) { this.name = name; }, kick : function() { document.writeln(this.name+'の蹴りじゃぁあ!'); } };
これは次のようにに書くのと同じ意味となります。
Person.prototype.initialize = function(name) { this.name = name; } Person.prototype.kick = function() { document.writeln(this.name+'の蹴りじゃぁあ!'); }
どちらが書きやすいか?というのは一目瞭然ですね。
ここで、特別な関数が登場しています。 initialize がその特別な関数になるのですが、これは、次のようにクラスをnewによって初期化した際に最初に呼ばれる関数です。
var kenji = new Person('kenji');
この最初に呼ばれる関数のことをオブジェクト指向用語でコンストラクタと呼びます。initialize という名前はprototype.jsによって決められた名前で、この名前は固定でかえることは出来ません。
次のページ: prototype.jsを使ってクラスを継承 (JavaScriptでオブジェクト指向)
スポンサードリンク