【发布时间】:2014-09-08 02:01:59
【问题描述】:
在 Javascript 中使用原型继承时,我们必须在某些时候创建基类的实例,以便将其原型插入调用链中。例如,如果我有一个 A 类和一个从 A. 继承的 B 类,它看起来像这样:
function A() {}
function B() {}
B.prototype = new A();
这很烦人,因为我还不想创建 A,这可能会产生负面影响。我怎样才能避免这种情况?
【问题讨论】:
-
“……这会产生负面影响”,比如?
-
你为什么不想创建
A?您对使用 Object 字面量有疑问吗? -
@PHPglue——你不能用字面量做原型继承,你必须使用构造函数或Object.create来分配给对象的
[[Prototype]](在ES6草案和非-中忽略setPrototypeOf标准__proto__属性)。 -
我不创建 A 因为它与创建派生类无关。您强制使用哪种语言创建实例来创建派生类?
-
看来 Object.create 解决了我遇到的问题。它不知道。
标签: javascript oop constructor prototypal-inheritance