javascript エラー「Uncaught SyntaxError: Unexpected identifier」の解決方法
- 作成日 2022.05.12
- 更新日 2022.12.02
- javascript
- javascript
javascriptで、エラー「Uncaught SyntaxError: Unexpected identifier」が発生した場合の原因と解決方法を記述してます。「Unexpected identifier」は「予期しない識別子」という意味で、変数宣言の「var」や「let」などのスペルミスや構文の間違いなどをしてしまった際に発生します。
目次
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 107.0.5304.122
エラー内容
以下のコードを実行時に発生。
※その他のパターンは後述してます。
va num = 7;
エラーメッセージ
Uncaught SyntaxError: Unexpected identifier 'num'
画像
firefox(バージョン107)では、下記のエラーとなります。
Uncaught SyntaxError: unexpected token: identifier
画像
safari15.5では、下記のエラーとなります。
SyntaxError: Unexpected identifier 'num'
画像
原因
タイプミスで「var」が「va」だけになっているため。
解決方法
「var」と正しく記述する
var num = 7;
その他のパターン
関数の括弧の閉じ忘れ
括弧の閉じ忘れなどでも同じエラーが発生します。
function fn()
console.log('sample'); // Uncaught SyntaxError: Unexpected identifier 'console'
}
fn();
解決方法は括弧を閉じてあげます。
function fn(){
console.log('sample');
}
fn();
セミコロンではなくカンマを使用
セミコロンが必要な構文にカンマなどを使用した場合にも発生します。
let arr = ["aaa", "bbb", "ccc"];
for (let i = 0, i < arr.length; i++) { // Uncaught SyntaxError: Identifier 'i' has already been declared
console.log(arr[i]);
}
セミコロンを使用することで解決します。
let arr = ["aaa", "bbb", "ccc"];
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
オブジェクトのプロパティにカンマ漏れ
オブジェクトのプロパティを生成時にカンマが漏れている場合にも発生します。
const obj = {
name: 'foo' // Uncaught SyntaxError: Unexpected identifier 'age'
age: 10,
};
カンマを追加します。
const obj = {
name: 'foo',
age: 10,
};
スペルミス
例えば変数宣言の「let」の「L」が大文字になっている場合にも発生します。
Let num = 7; // Uncaught SyntaxError: Unexpected identifier 'num'
解決方法は「L」を小文字にして「let」とします。
let num = 7;
-
前の記事
jquery 指定した要素と同じ階層の兄弟要素を取得する 2022.05.11
-
次の記事
java 正規表現にマッチした全ての文字列を変換する 2022.05.12
コメントを書く