← エラー辞典に戻る

JavaScript

🔢 計算結果が NaN になる

文字列を数値に変換していない

😰 こんな症状

エラーは出ないのに、計算結果が NaN(Not a Number)と表示される。文字列と数値の計算で起きやすいよ。

🔍 原因

数値のつもりの変数が実は文字列になっているよ。JavaScriptではinput.valueで取得した値は常に文字列型だから、そのまま計算すると文字列結合になったりNaNになったりするんだ。"100円" * 2 のように数値に変換できない文字列を計算するとNaNになるよ。

❌ エラーが起きるコード

const price = "100円";
const total = price * 2;
// NaN になる

✅ 直し方

1. Number(値)やparseInt(値)で数値に変換してから計算する。 2. console.log(typeof 変数名)で型を確認する。 3. input.valueは常に文字列なのでNumber(input.value)で変換する。 4. isNaN(値)でNaNかどうかチェックできる。

✅ 修正後のコード

const price = parseInt("100円");
const total = price * 2; // 200

この解決法は役立ちましたか?

🔗 関連するエラー

🔗 別カテゴリの関連エラー

📖 この問題を学べるレッスン

JavaScriptコースで基礎から学ぶ →

📝 関連ブログ記事

📖 関連する用語

🚀 JavaScriptコースで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

JavaScriptコースを始める →

❓ 関連するQ&A