ReferenceError: variable is not defined
未定義の変数にアクセスした場合に発生するエラー
概要
ReferenceError: variable is not defined は、存在しない変数にアクセスしようとした場合に発生するエラーです。変数のスコープ、スペルミス、宣言忘れなどが原因です。
エラーメッセージ
Uncaught ReferenceError: myVariable is not defined
at script.js:5:13
ReferenceError: Cannot access 'x' before initialization
原因
- 変数の未宣言: 変数が宣言されていない
- スペルミス: 変数名の綴りが間違っている
- スコープの問題: 変数が別のスコープで定義されている
- TDZ(Temporal Dead Zone): let/const の初期化前アクセス
- モジュールのインポート忘れ: 必要なモジュールをインポートしていない
解決策
1. 変数を宣言する
| |
2. スペルミスを修正
| |
3. スコープを理解する
| |
4. TDZ を回避
| |
5. 関数内の変数スコープ
| |
6. グローバル変数の確認
| |
7. モジュールのインポート
| |
8. コールバック内のスコープ
| |
9. async/await でのエラー
| |
デバッグのコツ
typeof でチェック
| |
try-catch でキャッチ
| |
デバッガーを使用
| |
JavaScript の他のエラー
この記事は役に立ちましたか?