加法の修正
importance: 5
ユーザーに2つの数値を求め、それらの合計を表示するコードを以下に示します。
正しく動作しません。以下の例での出力は12
です(既定のプロンプトの値の場合)。
なぜですか?修正してください。結果は3
であるはずです。
let a = prompt("First number?", 1);
let b = prompt("Second number?", 2);
alert(a + b); // 12
その理由は、promptがユーザー入力を文字列として返すためです。
したがって、変数はそれぞれ"1"
と"2"
の値を持ちます。
let a = "1"; // prompt("First number?", 1);
let b = "2"; // prompt("Second number?", 2);
alert(a + b); // 12
+
の前に文字列を数値に変換する必要があります。たとえば、Number()
を使用するか、+
を前に付けるなどです。
たとえば、prompt
の直前
let a = +prompt("First number?", 1);
let b = +prompt("Second number?", 2);
alert(a + b); // 3
またはalert
内
let a = prompt("First number?", 1);
let b = prompt("Second number?", 2);
alert(+a + +b); // 3
最新のコードで単項と二項の両方の+
を使用します。おかしな感じがしませんか?