クラス内部get
またはset
という名前のメソッドを定義するとき、私は奇妙な問題を抱えている、例えば、以下のように私はクラスMemのを定義しています:。JavascriptのでSyntaxError:予期しないトークン「(」
class Mem {
constructor() {
this.list=[]
}
get(index) {
return this.list[index];
}
set(index, value) {
this.list[index] = value;
}
}
しかし、私はgeta
またはseta
にメソッド名を変更するとき、私はクラス定義の作品、しかしSyntaxError: Unexpected token '('
を取得し、私がでSyntaxErrorを得ることはありません。
class Mem {
constructor() {
this.list=[]
}
geta(index) {
return this.list[index];
}
seta(index, value) {
this.list[index] = value;
}
}
私はget
とset
がJavascriptでは制限されていないキーワードであることを確認していますので、私が間違っていることについて混乱しています。
実行中の環境に関係なくエラーが発生します。 Chromeでコードをコピーして貼り付けても問題ありません。 –
ちょうどチェックされ、それはクロームで動作します。このエラーはSafariでのみ発生するようです。 – dqiu
まだ完全に*サポートしていないブラウザでは、ES6テクノロジ( 'class')を使用しています。互換性表を常に参照してください。 –