javascript エラー「Uncaught SyntaxError: Unexpected number」の解決方法

javascript エラー「Uncaught SyntaxError: Unexpected number」の解決方法

javascriptで、エラー「Uncaught SyntaxError: Unexpected number」が発生した場合の原因と解決方法を記述してます。

環境

  • OS windows11 pro 64bit
  • Apache 2.4.43
  • ブラウザ chrome 107.0.5304.107

エラー内容

以下のコードで発生。

const obj = {
  count: function() 1
};

エラーメッセージ

Uncaught SyntaxError: Unexpected number

画像

firefox(バージョン106)でも、以下のエラーとなります。

Uncaught SyntaxError: missing { before function body

画像

原因

関数内に「return」がないため

解決方法

「return」を使用する。

const obj = {
  count: function() {return 1}
};

その他のパターン

ドット記法で数値を指定

オブジェクトのプロパティ名に数値を「ドット記法」で指定した場合にも同じエラーが発生します。

let obj = { 'name':'hoge', 'age':35, 'tel':'090-1111-1111'};

obj.100= 'test';// Uncaught SyntaxError: Unexpected number

console.log(obj); 

firex102では、以下のエラーとなります。

Uncaught SyntaxError: unexpected token: numeric literal

「ドット記法」ではなく「ブラケット記法」を使用すれば解決します。

let obj = { 'name':'hoge', 'age':35, 'tel':'090-1111-1111'};

obj[100]= 'test';// {100: 'test', name: 'hoge', age: 35, tel: '090-1111-1111'}

console.log(obj);