ホームページ > 記事 > ウェブフロントエンド > なぜjsにコンストラクターが必要なのか
コンストラクターを使用して再利用可能なオブジェクトを構築する
JS 内の関数をコンストラクターにすることができる 関数を呼び出すことができる通常の関数と同じです。new を使用してオブジェクトを作成する場合、対応する関数はコンストラクターです。オブジェクトを通じて呼び出される場合、それは通常の関数です。
コンストラクターは、ユーザーが構築する関数です。通常の関数とは質的に異なる特別なメソッドです。その関数は主に、オブジェクトを作成するときにオブジェクトを初期化するために使用されます。メンバーに初期値を割り当てるときのコンストラクターの主な特徴は、メソッド名、最初の文字が大文字であること、および new
オブジェクトに多数のインスタンスがある場合、またはオブジェクトにインスタンスが含まれる場合に使用されることです。継承またはコンストラクターのパラメーターの受け渡しに注意してください。 コードのコメント
//创建了一个构造函数 function Person(name,address){ this.name = name; this.address = address; } //为构造函数的原型对象添加一个方法sayHello Person.prototype.sayHello = function(){ console.log('Hi I am ' + this.name); } //通过构造函数Person实例化一个p1,并传参 var p1 = new Person('postbird','earth'); //通过构造函数Person实例化一个p2,并传参 var p2 = new Person('ptbird','month'); console.log(p1);//{name: "postbird", address: "earth"} console.log(p2);//{name: "ptbird", address: "month"} // p1和p2 继承了Person的sayHello方法 p1.sayHello()//Hi I am ptbird p2.sayHello()//Hi I am postbird
辛抱強く上記のコードを試してみてください。これにより、スケーラビリティが向上し、N 個のインスタンスを作成してコードの再利用を実現できます。
以上がなぜjsにコンストラクターが必要なのかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。