プロトタイプと __proto__ の違いを理解するにはどうすればよいですか?
コンストラクターがプロトタイプにアクセスする場合、通常は prototype を介してプロトタイプにメソッドを追加します。 リーリー
prototype
リーリー
はプロトタイプにアクセスするためのコンストラクターとして使用され、__proto__ はプロトタイプにアクセスするためのインスタンスとして使用されます。それらの ID が異なる場合、メソッドが両方を同時に呼び出した場合でも、異なるプロトタイプにアクセスする可能性があります。 prototype是作为构造函数去访问原型,而__proto__
__proto__
すべてのオブジェクトには __proto__,而prototype只有Function があります。
Function
以下もチェックしてみてください:
/a/11...
https://developer.mozilla.org...
prototype 是构造函数的一个属性,__proto__ 是实例的一个属性。使用构造函数生成的实例的 __proto__ 属性会指向构造函数 prototype 属性が指すオブジェクト。
まあ、それだけです。
関数の観点: オブジェクトがコンストラクターまたはリテラル形式を使用して定義される場合、prototype は proto のデフォルト値を決定します
protoはJSエンジンプロトタイプチェーン検索の基礎です
重要な点は、プロトタイプチェーンの検索方法を変更したい場合、コンストラクターのプロトタイプを変更することで、後続のインスタンス化されたすべてのオブジェクトのプロトタイプチェーン検索方法を変更し、protoを使用してプロトタイプチェーン検索を変更できるということです。単一のオブジェクトの
コンストラクターがプロトタイプにアクセスする場合、通常は
一部のサポートされているブラウザで、新しいインスタンスがプロトタイプにアクセスするときprototype
を介してプロトタイプにメソッドを追加します。 リーリーリーリー
結論:はプロトタイプにアクセスするためのコンストラクターとして使用され、
__proto__
はプロトタイプにアクセスするためのインスタンスとして使用されます。それらの ID が異なる場合、メソッドが両方を同時に呼び出した場合でも、異なるプロトタイプにアクセスする可能性があります。prototype
是作为构造函数去访问原型,而__proto__
すべてのオブジェクトには
__proto__
,而prototype
只有Function
があります。以下もチェックしてみてください:
/a/11...
https://developer.mozilla.org...
https://developer.mozilla.org...
prototype
是构造函数的一个属性,__proto__
是实例的一个属性。使用构造函数生成的实例的__proto__
属性会指向构造函数prototype
属性が指すオブジェクト。まあ、それだけです。
関数の観点: オブジェクトがコンストラクターまたはリテラル形式を使用して定義される場合、
prototype は proto のデフォルト値を決定します
protoはJSエンジンプロトタイプチェーン検索の基礎です
重要な点は、プロトタイプチェーンの検索方法を変更したい場合、コンストラクターのプロトタイプを変更することで、後続のインスタンス化されたすべてのオブジェクトのプロトタイプチェーン検索方法を変更し、protoを使用してプロトタイプチェーン検索を変更できるということです。単一のオブジェクトの