以下内容无法按预期工作:
function sum(x,y){
return x + y;
}
document.getElementById('submit').onclick = function(e)
{
//do someting
e.stopPropagation();
var value1 = document.getElementById('v1').value,
value2 = document.getElementById('v2').value;
var newSum = sum(value1, value2);
console.log(newSum);
}
Run Code Online (Sandbox Code Playgroud)
拾取的值有问题.它应该返回总和而不是"1 + 2 = 12"
更改
return x + y;
Run Code Online (Sandbox Code Playgroud)
至
return parseInt(x) + parseInt(y);
Run Code Online (Sandbox Code Playgroud)
在添加值之前,您必须先将值转换为数字.如果数字是浮点数,则可以使用parseFloat而不是parseInt.
编辑正如RGraham在评论中所建议的那样,最好parseInt明确地传递基数(检查文档).所以,代码变成了
return parseInt(x, 10) + parseInt(y, 10);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
72 次 |
| 最近记录: |