[1] >A [DFN@en[prototype]] is an [[object]] used to implement structure, state, and behaviour inheritance in [[ECMAScript]]. When a [[constructor]] creates an [[object]], that [[object]] implicitly references the [[constructor]]'s associated [[prototype]] for the purpose of resolving [[property]] references. The [[constructor]]'s associated [[prototype]] can be referenced by the [[program]] [[expression]] [CODE(JS)@en[[[constructor]].[[prototype]]]], and [[properties]] added to an [[object]]'s [[prototype]] are shared, through [[inheritance]], by all [[objects]] sharing the [[prototype]]. ;; [CITE[ECMAScript Language Specification (HTML version)]] ([TIME[2009-04-03 04:43:48 +09:00]] 版) * 関連 [3] [[プロトタイプ]]を用いる[[オブジェクト指向]]を特に[[プロトタイプ型]]と呼んで[[クラス型オブジェクト指向]]と区別します。 [2] [[JavaScript]] [[ライブラリー]]である [[Prototype.js]] は [[JavaScript]] [[言語]]の概念である「[[プロトタイプ]]」 と直接の関係はありません。