Пока это работает как задумано
class ClassWithStaticMethod {
static staticMethod() {
return ('staticMethod');
};
static staticMethod2() {
const yee = this.staticMethod();
return 'staticMethod2 '+yee;
};
}
console.log(ClassWithStaticMethod.staticMethod2());
//staticMethod2 staticMethod
Это,
i) иметь доступ к staticMethod () с именем класса и
ii) этот метод может вызывать другой статический метод в том же классе, используя " this ",
Это не работает
class ClassWithStaticMethod {
static staticMethod = () => {
return ('staticMethod');
};
static staticMethod2 = () => {
const yee = this.staticMethod;
return 'staticMethod2 '+yee;
};
}
console.log(ClassWithStaticMethod.staticMethod2());
//staticMethod2 undefined
В том смысле, что я все еще могу получить доступ к методу staticMethod (), но я не могу получить доступ к другому методу в первом методе. Я получаю неопределенный, и если я использую
const yee = this.staticMethod();
Я получаю ошибку
ошибка TypeError: _this.staticMethod не является функцией