JS のプロトタイプ オブジェクトとプロトタイプ属性に精通している場合は、後でプロトタイプ チェーンと継承を理解するのが非常に簡単になります。
1 function Person(){ 2 } 3 Person.prototype.name = "jingzi"; 4 Person.prototype.age = 20; 5 Person.prototype.sayName = function(){ 6 alert(this.name); 7 }; 8 9 var person1 = new Person();10 person1.sayName(); //"jingzi"
これは作成されたオブジェクトです。プロトタイプ パターンを使用すると、コードは非常に短く、理解するのは難しくありません。プロトタイプのせいで疑問がある場合は、読み続けてください
この見苦しい図は無視してください (.・_・.)。 。これが問題を理解するための鍵です~本文に入りましょう。 。 。 。
各関数が作成されると、その関数のプロトタイプ オブジェクトを指す prototye 属性が与えられます。デフォルトでは、各プロトタイプ オブジェクトは、プロトタイプ属性が配置されている関数へのポインターを含むコンストラクター属性を取得します。
上に示されているように、Person 関数が作成されると、その関数は Person Prototype プロトタイプ オブジェクトを指すプロトタイプ属性を持ち、このプロトタイプ オブジェクトにはコンストラクター属性があり、そのポインターは Person を指します。つまり、プロトタイプ属性は person にあります。オブジェクト インスタンスを作成すると、プロトタイプ属性が付けられます (すべての関数が作成時にプロトタイプ属性を持つためです (^o^)/)。このプロトタイプ属性は、コンストラクター person を直接指すのではなく、そのプロトタイプ オブジェクトを指します。
ここで、インスタンス オブジェクトがプロトタイプ オブジェクトを介してコンストラクターに接続されていることを覚えておく必要があります。
関連する推奨事項:
JS プロトタイプ オブジェクトとプロトタイプ チェーン_JavaScript スキルについての簡単な説明
以上がjsプロトタイプの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。