私はjavascriptでOOテクニックを学ぼうとしていました。ほとんどのWebサイトは、プロトタイプの継承を使用しています。
しかし、私は次のことがなぜ悪いのかを理解しようとしています(そしてそれでもプロトタイプの継承ができることを達成することができます):
//create parent class
var Person = function (vId, vName) {
this.Id = vId;
this.Name = vName;
this.Display = function () {
alert("Id=" + this.Id);
}
};
//create new class
var Emp = function (vId, vName, vOfficeMail) {
Person.call(this, vId, vName)
this.OfficeEmail = vOfficeMail;
this.Display = function () {
alert("Id=" + this.Id + ", OfficeMail=" + this.OfficeEmail);
}
};
//create instance of child class
var oEmp = new Emp(1001, "Scott", "a@a.com"); //using Child's constructor
//call display method in child class
oEmp.Display();
//create instance of parent class
var oPerson = new Person(1002, "Smith"); //using Parent's constructor
//call display method in parent class
oPerson.Display();