基本JavaScript函数返回串联,而不是算术和
我是新来的,所以谢谢你的耐心。 我确实找了很多答案,但没找到,可能是因为答案太明显了基本JavaScript函数返回串联,而不是算术和,javascript,Javascript,我是新来的,所以谢谢你的耐心。 我确实找了很多答案,但没找到,可能是因为答案太明显了 在这种情况下,输入x和y取自,因为当您在+运算符的任一侧放置字符串时,它会执行串联 "3" + "3" // "33" 输入的value属性将始终为您提供一个字符串 如果要将它们添加到一起。因为当您将字符串放在+运算符的任一侧时,它会执行串联 "3" + "3" // "33" 输入的value属性将始终为您提供一个字符串 如果要将它们相加。需要将其转换为数字 function sum(x,y) {
在这种情况下,输入x和y取自
,因为当您在+
运算符的任一侧放置字符串时,它会执行串联
"3" + "3" // "33"
输入的value属性将始终为您提供一个字符串
如果要将它们添加到一起。因为当您将字符串放在+
运算符的任一侧时,它会执行串联
"3" + "3" // "33"
输入的value属性将始终为您提供一个字符串
如果要将它们相加。需要将其转换为数字
function sum(x,y) {
x = document.getElementById("x").value;
y = document.getElementById("y").value;
var answer = Number(x)+Number(y);
document.getElementById("sum").innerHTML = answer;
}
你需要把它转换成数字
function sum(x,y) {
x = document.getElementById("x").value;
y = document.getElementById("y").value;
var answer = Number(x)+Number(y);
document.getElementById("sum").innerHTML = answer;
}
这是因为x
和y
是字符串,要正确使用它们,请使用Number(x)+Number(y)
或parseFloat(x)+parseFloat(y)
这是因为x
和y
是字符串,要正确使用它们,请使用Number(x)+Number(y)
或parseFloat(x)+parseFloat(y)
您希望使用parseInt
函数将字符串实际转换为int,然后像这样添加它们
function sum(x,y) {
x = parseInt(document.getElementById("x").value);
y = parseInt(document.getElementById("y").value);
var answer = x+y;
document.getElementById("sum").innerHTML = answer;
}
您希望使用parseInt
函数将字符串实际转换为int,然后像这样添加它们
function sum(x,y) {
x = parseInt(document.getElementById("x").value);
y = parseInt(document.getElementById("y").value);
var answer = x+y;
document.getElementById("sum").innerHTML = answer;
}
因为你得到的值是字符串,你需要把它们转换成数字。光是在这个问题上就有上百万次的重复。现在查找一个…值始终返回字符串。因此,告诉JS将其解释为数字,例如使用…value*1或parseInt,或parseFloat,或…因为您得到的值是字符串,您需要将它们转换为数字。光是在这个问题上就有上百万次的重复。现在查找一个…值始终返回字符串。因此,告诉JS将其解释为数字,例如使用…value*1或parseInt,或parseFloat,或…谢谢,这解决了它!谢谢,这个问题解决了!输入的value属性将始终为您提供一个字符串。-输入类型为“数字”时为奇数,对吗。谢谢,这就解释了这个问题!输入的value属性将始终为您提供一个字符串。-输入类型为“数字”时为奇数,对吗。谢谢,这就解释了这个问题!