ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript の proto と Constructor.prototype の違いは何ですか?
proto とconstructor.prototype の違い
オブジェクトの proto プロパティは、共有プロパティとメソッドを含むプロトタイプ オブジェクトを参照します。対照的に、constructor.prototype は、オブジェクトのコンストラクター関数のプロトタイプ プロパティを指します。
次の例は、その違いを示しています。
<code class="javascript">function Gadget(name, color) { this.name = name; this.color = color; } Gadget.prototype.rating = 3; var newtoy = new Gadget("webcam", "black");</code>
この場合、newtoy.__proto__ は Gadget を指します。 prototype はプロパティ評価を持ち、newtoy.constructor.prototype も Gadget.prototype を指します。ただし、newtoy.constructor.prototype.constructor.prototype.constructor.prototype は、Object.prototype を超えるプロトタイプがないため null を返します。
これは、proto が、一方、constructor.prototype はプロトタイプ チェーンに従います。 constructor.prototype に複数回アクセスすると、最上位の Object.prototype に到達するまでプロトタイプ チェーンをたどることになります。
Internet Explorer には、__proto__ プロパティはありません。代わりに、 [[Prototype]] 属性を使用してオブジェクトのプロトタイプにアクセスできます。ただし、この属性は標準の JavaScript コードではアクセスできません。
プロトタイプ オブジェクトを参照すると、JavaScript の継承階層を理解するのに役立ち、関連オブジェクト間でプロパティとメソッドを共有するメカニズムが提供されます。
以上がJavaScript の proto と Constructor.prototype の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。