我不清楚 Class 表达式和 Class 声明。请帮助我了解它们之间的不同。
谢谢
最佳答案
比较简单。
在“类表达式”中,类对象 NamedFoo
被分配给名为 Foo
的变量,如下所示:
var Foo = class NamedFoo {
constructor() {}
whoIsThere() {
return NamedFoo.name;
}
}
在“类声明”中,类对象 NamedFoo
单独声明,如下所示:
class NamedFoo {
constructor() {}
whoIsThere() {
return NamedFoo.name;
}
}
这里的区别还在于,当它是“类声明”时,您可以使用 NamedFoo
来引用该类,但是,当它是“类表达式”时,您将只能通过分配给它的变量引用该类,在本例中为 Foo
。
希望对你有帮助!
关于ecmascript-6 - ES6 中的类声明和类表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38004785/