带有可变参数的ES6类super()

时间:2016-07-18 22:55:22

标签: javascript ecmascript-6 subclass

在ES6中,有没有办法调用通过可变参数传递的父构造函数,即foo.apply(this, arguments)?我已经找到了答案,我看到的唯一实例是调用super()(无参数)或调用super(x, y)(使用特定参数)。 super.apply(this, arguments)似乎不起作用。

1 个答案:

答案 0 :(得分:41)

我觉得方便和遵循的模式是

constructor(...args) {
    super(...args);
}

如果您拥有并使用命名参数,则可以改为:

constructor(a, b, c) {
    super(...arguments);
}

参考文献: