尝试使用函数在javascript中添加三个数字但不添加它们而只是将它们写为一个数字
function numinput(a,b,c,res){
a = prompt("Enter first number");
b = prompt("Enter second number");
c = prompt("Enter third number");
res = a + b + c ;
alert (res);
}
numinput();
答案 0 :(得分:1)
使用
将值转换为数字parseInt函数
。这是一个有效的解决方案。
function numinput(a,b,c,res){
a = parseInt(prompt("Enter first number"), 10);
b = parseInt(prompt("Enter second number"), 10);
c = parseInt(prompt("Enter third number"), 10);
res = a + b + c ;
alert (res);
}
numinput();
答案 1 :(得分:1)
prompt返回string
。您需要先将字符串转换为数字,否则您将连接字符串:'5' + '7' === '57'
以下是实现此目标的一些方法:
1 - 使用Number
Number('5');
2 - 使用parseInt或parseFloat
parseInt('20', 10);
parseFloat('5.5');
3 - 一元+
运营商解释其他答案
+'5'
工作演示:
function numinput() {
var a = prompt("Enter first number"),
b = prompt("Enter second number"),
c = prompt("Enter third number"),
res = Number(a) + Number(b) + Number(c);
alert(res);
}
numinput();
答案 2 :(得分:0)
每个用户条目都是typeof string
,它被连接成一个整体string
。如果要将每个元素添加为Math
操作,请使用变量前面的+
符号将条目解析为数字,或使用parseInt
函数对其进行解析。
function numinput(a, b, c, res) {
a = prompt("Enter first number");
b = prompt("Enter second number");
c = prompt("Enter third number");
res = +a + +b + +c;
alert(res);
}
numinput();
答案 3 :(得分:0)
您需要将每个值(字符串)转换为带有一元+
的数字。
然后我建议将变量声明移动到函数中而不是函数的参数内部,因为你不需要这样做,而是在函数内部分配值。
function numinput() {
var a = +prompt("Enter first number"),
b = +prompt("Enter second number"),
c = +prompt("Enter third number"),
res = a + b + c;
alert(res);
}
numinput();