JavaScript
🔢 計算結果が NaN になる
文字列を数値に変換していない
😰 こんな症状
エラーは出ないのに、計算結果が NaN(Not a Number)と表示される。
🔍 原因
数値のつもりの変数が実は文字列になっている。input.value で取得した値は常に文字列。
❌ エラーが起きるコード
const price = "100円";
const total = price * 2;
// NaN になる
✅ 直し方
Number(値) や parseInt(値) で数値に変換してから計算する。console.log(typeof 変数名) で型を確認すると原因がわかりやすい。
✅ 修正後のコード
const price = parseInt("100円");
const total = price * 2; // 200
この解決法は役立ちましたか?
🔗 関連するエラー
- 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 — 括弧・波括弧の閉じ忘れ
📖 この問題を学べるレッスン
📝 関連ブログ記事
- プログラミングのエラーメッセージの読み方 — エラーの読み方を基礎から解説