Javascript继承构造函数

时间:2012-07-26 00:06:25

标签: javascript inheritance constructor

正如我可以做的那样,让孩子继承父母而不改变像这样的子代码构造函数:

var parent = function(params){
    this.params = params;
}

var child = function(){}

var childObj = new child({one:1,two:2});

console.log(childObj.params) //should show params

1 个答案:

答案 0 :(得分:2)

你做不到。如何工作,传递给函数的参数(对它们没有任何作用)不能从外部获得......

function child(p) {
    parent.call(this, p);
}

在不修改构造函数的情况下,唯一可以达到预期结果的是手动设置它们:

var childObj = new child();
childObj.params = {one:1,two:2};

// or, if you want all child objects to inherit them:

child.prototype.params = {one:1,two:2};