各関数にはプロトタイプ (プロトタイプ) 属性があります。この属性は、オブジェクトを指すポインタです。このオブジェクトの目的は、特定の型のすべてのインスタンスによって共有されるプロパティとメソッドを含めることです。つまり、このプロトタイプ オブジェクトインスタンスに共有プロパティとメソッドを与えるために使用されます。
各インスタンス内にはプロトタイプ オブジェクトへのポインターがあります。
プロトタイプ パターン
コンストラクターを使用する場合の問題は、各メソッドを各インスタンスで再作成する必要があることです。コンストラクターの異なるインスタンス上の同じ名前は等価ではありません。作成する各コンストラクターには、プロトタイプ (プロトタイプ) 属性があります。この属性はオブジェクトを指すポインターであり、このオブジェクトの目的は、特定の型のすべてのインスタンスで共有できるプロパティとメソッドを含めることです。このプロトタイプを使用しますオブジェクト インスタンスのプロパティとメソッドを共有するパターンは、プロトタイプ パターンと呼ばれます
//原型模式创建对象 function Person(){ } Person.prototype.name='钟女士'; Person.prototype.age=80; Person.prototype.gender='女'; var person1= new Person(); console.log(person1) //简写原型模式 Person.prototype={ constructor:Person name:'钟女士', age:80, gender:'女' }
注: 各プロトタイプ オブジェクトにはコンストラクター属性があります。短縮パターンはデフォルトのプロトタイプ オブジェクトをオーバーライドするため、コンストラクターも再定義されますコンストラクターを指さなくなったので、コンストラクターを指すコンストラクター属性を書くことができます
以上がjsのプロトタイプとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。