У меня странный вопрос при определении метода с именем get
или set
внутри класса, например, я определяю класс Mem следующим образом:.Javascript SyntaxError: Неожиданное Токен «(»
class Mem {
constructor() {
this.list=[]
}
get(index) {
return this.list[index];
}
set(index, value) {
this.list[index] = value;
}
}
Но Я получаю SyntaxError: Unexpected token '('
Однако при изменении имени метода geta
или seta
, работ по определению класса, и я не получаю SyntaxError.
class Mem {
constructor() {
this.list=[]
}
geta(index) {
return this.list[index];
}
seta(index, value) {
this.list[index] = value;
}
}
Я проверил, что get
и set
не были ограничены ключевыми словами в Javascript, поэтому я смущен относительно того, что я делаю неправильно.
Звучит как ошибка в любой среде, в которой вы ее запускаете. Копирование и вставка кода в Chrome работает отлично. –
Просто проверено и работает на Chrome. Похоже, эта ошибка появляется только в Safari. – dqiu
Вы спешите с использованием технологий ES6 ('class') в браузерах, которые все еще не поддерживают * полностью. Всегда обращайтесь к таблице совместимости. –