[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]] 版)