Chrome 70中JavaScript类的static变量抛出语法错误问题
类中static字段在旧版Chrome中的语法错误问题
以下代码在Chrome 70及更低版本运行时会抛出语法错误:
class Welcome{ static name="something"; // 抛出错误 }
尽管MDN显示Chrome 42及以上支持static关键字,但这里的问题不在于static本身,而在于静态公共字段的语法支持。早期Chrome版本仅支持类的静态方法,而直接在类内部用static 字段=值的写法属于ES后续标准的特性,直到Chrome 72才完全支持。
如果要兼容Chrome 70及更低版本,需要改用以下两种写法之一:
- 类外部直接赋值静态属性:
class Welcome {} Welcome.name = "something";
- 类内部通过静态方法初始化:
class Welcome { static setName() { this.name = "something"; } } Welcome.setName();
内容的提问来源于stack exchange,提问作者MOHAMED SIKKANDAR AFZAL M
相关产品推荐
相关产品推荐

