Mozilla's Referenceを経由してこの単純な関係になっていました。Javascript継承呼び出しの振る舞い
function Employee() {
this.name = "";
this.dept = "general";
}
function Manager() {
Employee.call(this);
this.reports = [];
}
Manager.prototype = Object.create(Employee.prototype);
Apparently、これは従業員からマネージャーへの継承のような関係を形成します。 Employee.call(this);
がEmployee.prototype
に代わりにオブジェクトを割り当てるのがと ある理由それはManager.prototype
に割り当てられているわからないものを、ここで
二つの質問、。マネージャーは従業員から継承しているというのが私の考えです。おそらく、これは実際には両方のオブジェクトが互いにプロパティを取得できることを意味するプロトタイプチェーンの概念です。
説明が分かりますか。
Managerは従業員クラスのプロパティを継承し、独自のプロパティ/メソッドも持ちます。しかし、EmployeeクラスはManagerのプロパティを継承しません。 –
"*オブジェクトを' Employee.prototype' *に代入する代わりに* * - どのオブジェクト? – Bergi
@Bergi 'Employee.prototype = Object.create(Manager.prototype);' – Aaron