当我在线研究时,我发现不同的答案。Javascript - 是否在类中定义了方法原型或属性?
class Foo {
constructor() {
this.data = [];
}
add(x) {
//
}
}
上述代码是否等同于代码A或代码B?
代码A:
function Foo() {
this.data = [],
this.add = function(x) {
//
}
}
代码B:
function Foo() {
this.data = []
}
Foo.prototype.add = function(x) {
//
}
感谢您的帮助!
请参阅ES6的深入文档 - https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Classes –
它们相当于B.做一个'console.dir(Foo.prototype)'并亲自查看。 –
相关:[基于类和基于对象的语言比较(ECMAScript规范)](http://stackoverflow.com/q/34010495/218196) –