gpt4 book ai didi

javascript - OO Javascript .prototype

转载 作者:行者123 更新时间:2023-11-28 20:43:54 24 4
gpt4 key购买 nike

function Engineer (name, projs, mach) {
this.base = WorkerBee;
this.base(name, "engineering", projs);
this.machine = mach || "";
}
Engineer.prototype = new WorkerBee;

var jane = new Engineer("Doe, Jane", ["navigator", "javascript"], "belau");

这是来自 Mozilla 示例页面。为什么 new new WorkerBee 没有括号?如果 WorkerBee 构造函数有参数,我们是否需要在这一行中将它们传递给?

Engineer.prototype = new WorkerBee(BaseClassConstructorArgument1,2...)

我遇到了这个问题:JS 提示:缺少调用构造函数的“()”。

所以我现在想知道干净的解决方案会是什么样子。

最佳答案

使用 new 关键字调用构造函数时,括号是可选的,尽管有些 linter 会警告您。但使用 new WorkerBee 而不是 new WorkerBee()

是完全可以的

如果要传递参数,自然需要括号。这就是为什么有些人认为最好总是使用注释来保持一致性(通常是编写 lint 规则的同一个人)。

但选择完全取决于作为程序员的您。

关于javascript - OO Javascript .prototype,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13816930/

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