gpt4 book ai didi

javascript - 是否可以间接调用 X 是 ES6 类的构造函数?

转载 作者:行者123 更新时间:2023-12-04 08:43:04 25 4
gpt4 key购买 nike

这与 an old question 有关但我特别询问有关使用编写函数的旧方法扩展新的 ES6 类的问题。

以下代码无效。

class X {
a;
constructor(a) {
this.a = a;
}
}
X.call({}, 3); // Uncaught TypeError: Class constructor X cannot be invoked without 'new'

有没有办法间接调用构造函数?比如我是不是可以用老套的原型(prototype)继承来做一个Y?

function Y(a) {
X.call(this, a); // this doesn't work here, can't use super as well
}
Y.prototype = Object.create(X.prototype);
Object.setPrototypeOf(Y, X);
const y = new Y(12);

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com