修正加法
重要性:5
以下程式碼會要求使用者輸入兩個數字,並顯示其總和。
它無法正常運作。以下範例中的輸出為 12
(預設提示值)。
為什麼?修正它。結果應為 3
。
let a = prompt("First number?", 1);
let b = prompt("Second number?", 2);
alert(a + b); // 12
原因在於提示會將使用者輸入作為字串傳回。
因此變數的值分別為 "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
在最新的程式碼中同時使用一元和二元 +
。看起來很奇怪,對吧?