JavaScript オブジェクト 新しいページはコチラ
提供: yonewiki
(→.getPrototypeOf 関数) |
(→.setPrototypeOf 関数) |
||
1,405行: | 1,405行: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Media:JavaScript Object setPrototypeOf.html|実行結果サンプル]] | [[Media:JavaScript Object setPrototypeOf.html|実行結果サンプル]] | ||
+ | |||
+ | |||
+ | 27行目でObject.setPropertyOf関数でobjというオブジェクト記述子によって、生成したプロパティ記述子を含むオブジェクトにCreate1という関数オブジェクトのprototypeを設定しています。これにより、objはCreate1のプロトタイプを保持するので、nValue1やnValue2といったプロパティキーとその値が受け継がれます。そして、もともと保有していたオブジェクト記述子によって生成された値も保有しつづけることになります。そのことを示すのが、39行目からのobjの各キー値とobj[キー値]による全プロパティ値の出力です。valueもwritableもenumerableもnValue1もnValue2もすべてのプロパティを保有するオブジェクトになっていることがわかると思います。 | ||
+ | |||
+ | |||
+ | このような複雑なprototypeのgetやsetによって関数オブジェクト、ソースオブジェクト、オブジェクト記述子、プロパティ記述を設定したり取得したり書き出したりする操作がどのように実際のプログラムで活用できるのかは、また後の方で紹介できたいいなと思っています。ここでは、なんだかややこしい操作ができるんだな程度まで理解しておけば、この記事を読み進めている現段階としての理解度は十分だと思います。少しづつ理解すれば、いづれはすべてがわかる時が来ます。 | ||
== .freeze 関数 == | == .freeze 関数 == |