我不清楚类表达式和类声明。请帮助我理解他们之间的不同。
由于
答案 0 :(得分:3)
相对简单。
在"类表达式"中,类对象NamedFoo
被分配给名为Foo
的变量,如下所示:
var Foo = class NamedFoo {
constructor() {}
whoIsThere() {
return NamedFoo.name;
}
}
在"类声明"中,类对象NamedFoo
仅由其自身声明,如下所示:
class NamedFoo {
constructor() {}
whoIsThere() {
return NamedFoo.name;
}
}
此处的区别还在于,当它是“宣言”时,您可以使用NamedFoo
来引用该课程,但是,如果它是""类表达式",您只能通过分配给它的变量引用该类,在本例中为Foo
。
我希望有所帮助!