JavaScript
🚨 TypeError: xxx is not a function
関数でないものを呼び出している
😰 こんな症状
コンソールに TypeError: xxx is not a function と表示される。
🔍 原因
関数ではないものに () を付けて呼び出そうとしている。変数名と関数名が同じになっている、または関数の定義を忘れているケースが多い。
❌ エラーが起きるコード
const x = 5;
x();
// number は関数ではない
✅ 直し方
エラーの xxx の部分を確認し、それが function で定義されているか確認する。console.log(typeof xxx) で "function" と表示されなければ、定義が間違っている。
✅ 修正後のコード
const x = () => 5;
x(); // 5
この解決法は役立ちましたか?
🔗 関連するエラー
- Uncaught ReferenceError: xxx is not defined — 変数・関数名のタイポ
- Uncaught TypeError: Cannot read properties of null — getElementById の id が存在しない
- 404 Not Found(スクリプトが読み込まれない) — script の src パスが間違っている
- ボタンを押しても何も起きない — getElementById の id 不一致
- SyntaxError: Unexpected token — 括弧・波括弧の閉じ忘れ
📖 この問題を学べるレッスン
📝 関連ブログ記事
- プログラミングのエラーメッセージの読み方 — エラーの読み方を基礎から解説