Uncaught SyntaxError: Unexpected token ')'
/ʌnˈkɑt ˈsɪnˌtæks ˈɛrər: ˌʌnɪkˈspɛktɪd ˈtoʊkən/
- 意味
- 予期しない場所に
)があります
- Syntax = 文法
- Unexpected = 予想外の
- token = 記号・単語
- よくある原因
-
- カッコ
)}]の閉じ忘れ、または余分に入っている - カンマ
,の位置や数がおかしい
- カッコ
Uncaught ReferenceError: x is not defined
/ʌnˈkɑt ˈrɛfərəns ˈɛrər: ɛks ɪz nɑt dɪˈfaɪnd/
- 意味
- 参照エラー(変数
xが見つかりません)
- Reference = 参照
- defined = 定義されている
- よくある原因
-
- 変数名や関数名のスペルミス(打ち間違い)
- 変数を宣言するコードより上の行で実行しようとしている
Uncaught TypeError: undefined is not a function
/ʌnˈkɑt taɪp ˈɛrər: ˌʌndɪˈfaɪnd ɪz nɑt ə ˈfʌŋkʃən/
- 意味
- 型エラー(関数ではないものを実行しようとした)
- Type = 型
- function = 関数
- よくある原因
-
obj.func(); // func という関数が存在しない// より右側の文字はコメント(メモ)
Uncaught SyntaxError: Unexpected end of input
/ʌnˈkɑt ˈsɪnˌtæks ˈɛrər: ˌʌnɪkˈspɛktɪd ɛnd ʌv ˈɪnˌpʊt/
- 意味
- 文末が不自然です(閉じカッコが足りません)
- よくある原因
-
if (a) { console.log(a); // } ← この閉じ波カッコを忘れている
Uncaught SyntaxError: Missing ) after argument list
/ʌnˈkɑt ˈsɪnˌtæks ˈɛrər: ˈmɪsɪŋ ) ˈæftər ˈɑrɡjəmənt lɪst/
- 意味
- 引数リストの後に
)がありません - よくある原因
-
console.log('Hello); // '(クォーテーション)の閉じ忘れ文字列を囲む'や"の閉じ忘れによって、カッコが認識されない時によく発生
Invalid or unexpected token
/ˈɪnvəlɪd ɔr ˌʌnɪkˈspɛktɪd ˈtoʊkən/
- 意味
- 無効、または予期しない記号が含まれています
- よくある原因
-
- 全角スペースの混入
,(全角カンマ)や”(全角クォート)の使用
Cannot read properties of undefined (reading 'value')
/ˈkænɑt rid ˈprɑpərtiz ʌv ˌʌndɪˈfaɪnd (ˈrɛdɪŋ ˈvælju)/
- 意味
- undefined(空っぽの状態)のプロパティは読み込めません
- よくある原因
-
document.getElementById("x").value // HTML 側に id="x" が存在しないため、取得結果が undefined になっている
Assignment to constant variable.
/əˈsaɪnmənt tu ˈkɑnstənt ˈvɛriəbəl/
- 意味
- 定数(
const)への再代入エラー - よくある原因
-
const a = 1; a = 2; // エラー! const は一度決めたら変更できません
Unexpected identifier
/ˌʌnɪkˈspɛktɪd aɪˈdɛntəˌfaɪər/
- 意味
- 予期しない識別子(名前の書き方がおかしい、または区切り忘れ)
RangeError: Maximum call stack size exceeded
/reɪnʤ ˈɛrər: ˈmæksəməm kɔl stæk saɪz ɪkˈsidɪd/
- 意味
- 処理が無限ループしています
- よくある原因
- 自分自身を呼び出し続ける関数が止まらなくなったり、 終わりのないループを書いてしまった時に発生します。「もう限界!」というPCの悲鳴です。
SyntaxError: Identifier 'x' has already been declared
/ˈsɪnˌtæks ˈɛrər: aɪˈdɛntəˌfaɪər ɛks hæz ɔlˈrɛdi bɪn dɪˈklɛrd/
- 意味
- 変数
xはすでに使用されています - よくある原因
-
let x = 1; let x = 2; // エラー! 同じ名前でまた宣言している「その名前はもう登録済み」という通知
Fetch API Errors / NetworkError
/fɛʧ eɪ-pi-aɪ ˈɛrərz ˈnɛˌtwɜrk ˈɛrər/
- 意味
- データの取得(通信)に失敗しました
- よくある原因
-
- URLの打ち間違い
- インターネット接続が切れている
- 相手のサーバーがアクセスを拒否している
Uncaught (in promise)
/ʌnˈkɑt (ɪn ˈprɑməs)/
- 意味
- 非同期処理(待ち時間のある処理)でエラーが起きましたが、対処されていません
- よくある原因
- データの読み込み待ちなどで失敗したとき、エラーが起きた後の「失敗した時の処理(catchなど)」を書き忘れていると発生します。
Uncaught SyntaxError: Unexpected token '<'
/ʌnˈkɑt ˈsɪnˌtæks ˈɛrər: ˌʌnɪkˈspɛktɪd ˈtoʊkən/
- 意味
- 予期しない場所に
があります(JSだと思ったらHTMLを読み込んでしまった) - よくある原因
-
<script src="...">で指定したファイル名が間違っている- ファイルが見つからず、サーバーが「404 Not Found」という HTMLページ を返してしまった
net::ERR_CONNECTION_REFUSED(※ ネットワーク通信エラー)
/nɛt::ɛr_kəˈnɛkʃən_rəˈfjuzd/
- 意味
- 接続が拒否されました(サーバーに繋がらない)
- よくある原因
-
- ローカルサーバー(Live Serverなど)を起動し忘れている
- URLのポート番号(
:5500など)が間違っている
<最低限覚える英語>
| 英語 | 発音記号 | プログラミングでの主な意味 |
|---|---|---|
| Syntax | /ˈsɪnˌtæks/ | 文法・構文 |
| Unexpected | /ˌʌnɪkˈspɛktɪd/ | 予期しない(あるはずのない) |
| Missing | /ˈmɪsɪŋ/ | 見当たらない・不足している |
| Reference | /ˈrɛfərəns/ | 参照(変数などを呼ぶこと) |
| Type | /taɪp/ | 型(データの種類) |
| Identifier | /aɪˈdɛntəˌfaɪər/ | 識別子(変数や関数の名前) |
| Declared | /dɪˈklɛrd/ | 宣言されている |
| Cannot | /ˈkænɑt/ | 〜できない |
| Refused | /rəˈfjuzd/ | 拒否された(お断り) |
| Exceeded | /ɪkˈsidɪd/ | 超えた(限界突破) |
| Assignment | /əˈsaɪnmənt/ | 代入(値を入れること) |
★ JavaScript エラーについて AI と話をしていたら、頻出パターンを表にまとめてくれたのでページにしました。
国際発音記号 IPA(アメリカ発音)は私のこだわりです。
