【问题标题】:JavaScript - constructor parameters and prototype inheritanceJavaScript - 构造函数参数和原型继承
【发布时间】:2014-01-01 23:28:45
【问题描述】:

我正在使用这种类型的代码进行继承。问题是我在设置Bprototype 时遇到错误,因为new A() 在设置B.prototype 时尝试访问params.paramparamsundefined。如何处理?或者我应该使用另一种样式来模拟 js 中的继承?

function A(params) {
  this.param = params.param; // this will throw error when set up B prototype
}

function B(params) {
  A.call(this, params); // this is ok
}

B.prototype = new A(); // this is bad, A need some parameters

【问题讨论】:

标签: javascript


【解决方案1】:

你可以这样做,不会遇到问题。

var EmptyFunc = function() {};
EmptyFunc.prototype = A.prototype;

B.prototype = new EmptyFunc;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-17
    • 1970-01-01
    • 2011-11-23
    • 2013-12-24
    相关资源
    最近更新 更多