考虑以下 ES6 类:
'use strict';
class Dummy {
}
class ExtendDummy extends Dummy {
constructor(...args) {
super(...args)
}
}
class ExtendString extends String {
constructor(...args) {
super(...args)
}
}
const ed = new ExtendDummy('dummy');
const es = new ExtendString('string');
console.log(ed instanceof ExtendDummy);
console.log(es instanceof ExtendString);
我的理解是两者都应该是true
,在 Firefox 和 Chrome 中它们是,但是 Node 说es instanceof ExtendString
是false
。其他构造函数也是如此,而不仅仅是String
.
我用过的软件:
--harmony
带有标志的节点 v5.11.0 。- 铬 50
- 火狐 45
哪个 JavaScript 引擎是正确的,为什么?