javascript エラー「Uncaught SyntaxError: Rest element must be last element」の解決方法
- 作成日 2022.06.18
- 更新日 2022.12.29
- javascript
- javascript
javascriptで、エラー「Uncaught SyntaxError: Rest element must be last element」が発生した場合の原因と解決方法を記述してます。スプレッド構文を指定する位置を最後にしていない場合などに発生します。
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 108.0.5359.125
エラー内容
以下の、スプレッド構文を使用して配列を分割代入しようとしたコードで発生。
let [x, y, ...a, z] = [1, 2, 3, 4, 5, 6, 7, 8, 9]
console.log(x, y, a, z)
エラーメッセージ
Uncaught SyntaxError: Rest element must be last element
画像
firefox(バージョン107)では、以下のエラーとなります。
Uncaught SyntaxError: rest element may not have a trailing comma
画像
原因
スプレッド構文は、最後にしか使用できないため
解決方法
最後に使用する
let [x, y , z, ...a] = [1, 2, 3, 4, 5, 6, 7, 8, 9]
console.log(x, y, a, z)
実行結果
その他のエラー
最後にカンマを指定
以下の最後にカンマを使用したパターンでも同様のエラーが発生します。
let {a, b, ...x,} = {a:10, b:20, c:30, d:40}
console.log(a, b, x)
この場合は、カンマを外して使用すると解決します。
let {a, b, ...x} = {a:10, b:20, c:30, d:40}
console.log(a, b, x) // 10 20 {c: 30, d: 40}
-
前の記事
regファイルをコメントアウトする 2022.06.18
-
次の記事
mongoDB コレクション(テーブル)をリネームする 2022.06.18
コメントを書く