【发布时间】:2020-02-12 06:30:36
【问题描述】:
在我的代码中,我执行以下操作(非常简化):
class AddOrSelectAddress {
static body; // <-- Error
static async open() {
await $.get(basePath + 'Manage/AddOrSelectAddress', null, result => {
this.body = document.createElement('div');
this.body.innerHTML = result;
});
// ...
}
static someOtherMethod() {
// do something with body
}
}
我的代码在 Chrome 中运行良好。但是,Firefox 在第二行代码中抱怨错误:
SyntaxError: 错误的方法定义
我对基于类的 JavaScript 编程比较陌生。我在这里做错了什么?
Static variables in JavaScript 并没有真正帮助我,因为它主要使用旧语法。
【问题讨论】:
-
@Kevin.a
static关键字在 JS 中有效。 -
@Kevin.a 我以这个定义为导向:developer.mozilla.org/de/docs/Web/JavaScript/Reference/Klassen
-
查看 MDN 中的静态:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…。请注意,它适用于静态 methods ,而不是成员
-
我不确定静态变量是否允许未定义...这不会破坏使其未定义的意义吗?你不能把它作为类的属性来代替吗?比如,把它放在构造函数中,而不是在实例化类时声明它?
标签: javascript class