javascriptでクラスライクなコーディング
javascriptと使い出して、そろそろ10年を超えるます。
しかし、javascriptでjavaのクラスライクな実装が可能な事を知らなかったので、メモ。
JavaScriptのオブジェクト指向:コンストラクタに関するありがちな誤解
コンストラクタから作成したJavaScriptオブジェクトに、そうしたメンバを持たせることは可能でしょうか?
もちろん、可能です。コンストラクタ内で「this」演算子を用いることで、オブジェクトにメンバを追加することができます。下のコードは、Personのオブジェクトに以下のメンバを追加したものです。
なんですと?…もう少し速くこの方法を知っておきたかった(笑)
この方法を使えば、実装を分かりやすく、簡潔に書けそうです。
武装神姫用スクリプトも後で、この方式で組み替えよう。
function Person(name) {
// this演算子を用いて、メンバを追加
this.name = name;
this.hello = function() {
// this演算子を用いてメンバを参照
alert(“こんにちは。私の名前は” + this.name + “です。”);
};
}
// newしてメソッドを使用
var shiraishi = new Person(“白石”);
shiraishi.hello();
うん、coolなコードが書けそうで燃えます。