-5

プロトタイプについて読んでいますが、プロトタイプが何をするのか、プロトタイプを持つ意味が理解できないようです。プロトタイプの基本的な概念を理解するのに役立つ簡単な例 (collegeStudent オブジェクトなど) を作成できる人はいますか? ありがとう!

4

1 に答える 1

1

という関数を作成するとしましょうperson:

function person(name, age, gender) {
  this.name = name;
  this.age = age;
  this.gender = gender;
}

ここで、いくつかの新しい人を作成したとしましょう:

var fred = new person("fred", 35, "male");
var mary = new person("mary", 24, "female");
var joe = new person("joe", 46, "male");

person現在、 には 3 つのプロパティがありname,age, genderます。

プロトタイプを使用すると、新しいプロパティをオブジェクトに、および以前にインスタンス化されたすべてのオブジェクトに追加できます。

person.prototype.hairColor = null;<-- これを「brown」に設定すると、以前にインスタンス化されたすべてのオブジェクトの値が「brown」になります。なのでfred.hairColor茶色になります。

これの優れた点は、以前にインスタンス化されたオブジェクトと将来のすべてのオブジェクトをデフォルト値に設定できることです。これらのオブジェクトすべてに手動でプロパティを設定する必要はありません。

于 2013-02-08T21:19:04.130 に答える