我写
var a= prompt("Please enter a number")
var b= prompt("Please enter a number")
我在框中输入了7&7,但是为什么a + b的总和是77?我只希望总数是14,而不是77。我 无法理解为什么类似的数字会加上不正确的总数,以及为什么减去和乘除是正确的。
答案 0 :(得分:2)
当用户单击prompt
时,从OK
返回一个字符串,如果单击null
,则返回cancel
。因此,两个字符串“ 7” +“ 7”的串联为“ 77”。使用parseInt
或Number构造函数将字符串转换为数字,然后再进行加法运算
var a = prompt("Please enter a number");
var b = prompt("Please enter a number");
console.log(typeof a, typeof b)
let sum = parseInt(a, 10) + parseInt(b, 10);
console.log(sum)
答案 1 :(得分:0)
var a = Number(prompt("Enter first number"));
var b = Number(prompt("Enter second number"));
alert(a + b);
注意:避免使用parseInt,因为它仅处理前导字符,并且不会添加浮点数,例如6.8和3.5。
答案 2 :(得分:0)
a
和b
是字符串,而string + string
正在串联2个字符串,并且未添加值。
将字符串转换为数字的一种快速方法是在字符串之前添加+
(在这种情况下,在prompt
之前)
赞:
var a = +prompt("Please enter a number");
var b = +prompt("Please enter a number");
var sum = a + b;
console.log(sum);