在ECMAScript 6中,以下语法之间有什么区别:
class MyClass {
static foo = "bar"
}
class MyClass {}
MyClass.foo = "bar"
答案 0 :(得分:2)
第一个示例不是ES6的一部分,它是currently only a proposal因此可能存在于未来版本的Javascript中。
但是,它在功能上与第二个示例完全相同 - 您可以在Babel REPL中尝试查看它们编译到的内容。如果您正在编译代码,则可以使用第一种语法,但是您需要包含适当的标志(对于Babel,此代码需要'stage-1'标志进行编译)。
答案 1 :(得分:-1)
语法错误,但在第一个例子中,foo无法修改,第二个可以