Javascript调用基类构造函数
Javascript调用基类构造函数,javascript,prototypal-inheritance,Javascript,Prototypal Inheritance,Person是基类,Emp继承自Person。我试图在Emp中使用姓名,位置个人属性 function Person(name, location){ this.name = name; this.location = location; } Person.prototype.getName = function(){ return 'Name: ' + this.name; } function Emp(id, name, location){ this.id
Person
是基类,Emp
继承自Person
。我试图在Emp
中使用姓名
,位置
个人属性
function Person(name, location){
this.name = name;
this.location = location;
}
Person.prototype.getName = function(){
return 'Name: ' + this.name;
}
function Emp(id, name, location){
this.id = id;
Person.call(this, name);
Person.call(this, location);
}
Emp.prototype = Object.create(Person.prototype);
var e1 = new Emp(1, 'John', 'London');
e1.id // 1
e1.name // 'London'
e1.location //undefined
导致此错误的原因是什么?为什么取London的值?为什么要用一个参数调用构造函数两次
function Emp(id, name, location){
this.id = id;
Person.call(this, name, location);
}
为什么用一个参数调用构造函数两次
function Emp(id, name, location){
this.id = id;
Person.call(this, name, location);
}