JavaScript | Uncaught SyntaxError: Unexpected number エラーの原因と修正案

2023-10-17JavaScript エラー,JavaScript

JavaScript | Uncaught SyntaxError: Unexpected number エラーの原因と修正案

JavaScriptで発生するコンソールエラー「Uncaught SyntaxError: Unexpected number」の原因と対処・修正案について紹介しています。

Uncaught SyntaxError: Unexpected number
キャッチされない構文エラー: 予期しない数値

確認環境

サーバー:エックスサーバー
実行ブラウザ:Microsoft Edge バージョン 106.0.1370.42

Uncaught SyntaxError: Unexpected number エラーの発生原因

「Uncaught SyntaxError: Unexpected number」というJavaScriptのエラーはコード中に予期しない数値が記述されている場合に発生するエラーです。
また、変数に指定する値が正常な数値型ではない場合にも同エラーは発生します。

このエラーは構文エラー(Uncaught Syntax Error)に分類されています。

このエラーの発生原因は多岐にわたりますが、例えば以下のように変数名に数値または数値から始まる名前をつけようとするJSコードを実行する場合にエラーは発生します。

let 1;
// Uncaught SyntaxError: Unexpected number

現実的なコードミスとして起こりそうなのは配列やオブジェクトをキーを付けて呼び出そうとした場合などがあります。

let arr = ['Aplle', 'Pine', 'Banana'];
arr.1 = '';
// Uncaught SyntaxError: Unexpected number

変数の値が正常な数値表現ではない場合にもエラー「Uncaught SyntaxError: Unexpected number」は発生します。
以下の値の指定はすべてエラーとなります。

let x = 1a; // 文字列が含まれている
let y = 10.10.10; // 小数点が複数出現している
let z = 1e2.5; // 指数表記が間違っている

Uncaught SyntaxError: Unexpected number の修正案

「Uncaught SyntaxError: Unexpected number」エラーを修正するには、問題のある箇所に間違って不要な数値が記述されていないか確認します。

また、配列やオブジェクトの値をキー指定で利用する時にキー名が数値から始まる場合は [] を使って指定する事で問題を回避します。

let arr = ['Aplle', 'Pine', 'Banana'];
arr[1] = '';