前回は無名関数と無名コンストラクタについて書きました。
今回は、通常のコンストラクタについて書いてみます。
JavaScriptはプロトタイプベースなので、クラスという概念はありませんが、クラスっぽいものを定義してインスタンスを生成するっぽいことができます。
/**
* Class Ahyaとコンストラクタ
*/
function Ahya(arg){
this.arg = arg;
alert(arg);
}
//public init() method
Ahya.prototype.init = function(){
return this.arg;
}
var ahya = new Ahya('moe'); // 'moe'がアラート表示
alert( ahya.init() ); // 'moe'がアラート表示
まぁこんな感じ。
クラスベースをがっつりの人には、プロトタイプベースはわかりにくいかもしれない。
という自分もよく理解してないけど…。