自作コンパイラの部屋 > オブジェクト指向プログラム言語としてのJavaScript > 9.プロパティの実装
今までの説明の中で、オブジェクトは連想配列とプロパティを持つことが分かりました。
var obj = new Object(); obj.["foo"] = 1; obj.foo = "abc";
連想配列とプロパティは、どちらもオブジェクトの属性を表す目的で利用できます。また、どちらも特に宣言しなくともいきなり利用することもできます。この両者、なんとなく似ています。
実は、この二つ(連想配列とプロパティ)は同じものなのです。オブジェクトのメンバーは、連想配列として実装されています。
だから、
var obj = new Object(); obj["foo"] = 123; var p = obj.foo; document.writeln("p = ", p); 実行結果:
obj["foo"]とobj.fooは同じ内容であることが分かると思います。
メンバーが実は連想配列であるという事実は、for/in文を利用する際に必要となります。
目次 |