在javascript中添加两个数字
我试图将这两个数字相加一个小时,但在第三个文本字段中无法得到结果。请帮我做到这一点。非常感谢。另外,请告诉我javascript中是否有add()方法在javascript中添加两个数字,javascript,Javascript,我试图将这两个数字相加一个小时,但在第三个文本字段中无法得到结果。请帮我做到这一点。非常感谢。另外,请告诉我javascript中是否有add()方法 <!DOCTYPE html> <html> <head> <title>test</title> <style type="text/css"> #cal{ border:3px solid green; padding: 5
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<style type="text/css">
#cal{
border:3px solid green;
padding: 5px;
width:250px;
text-align: center;
}
</style>
</head>
<body>
<button onclick="add()" id="button">Add</button>
<div id="cal">
<input type="text" value=" " id="num1" size="5">
+
<input type="text" value=" " id="num2" size="5">
=
<input type="text" value=" " id="sum" size="5">
</div>
<script>
function add()
{
var a = document.getElementById("num1").value;
var b = document.getElementById("num2").value;
var ans = a + b ;
document.getElementById("sum").value = ans;
}
</script>
</body>
</html>
测试
#卡尔{
边框:3倍纯绿;
填充物:5px;
宽度:250px;
文本对齐:居中;
}
添加
+
=
函数add()
{
var a=document.getElementById(“num1”).value;
var b=document.getElementById(“num2”).value;
var ans=a+b;
document.getElementById(“sum”).value=ans;
}
输入值是字符串而不是数字。必须使用函数parseInt()将它们转换为整数,如果它们恰好是十进制数,则必须使用函数parseFloat()将它们转换为数字:
var a = parseFloat(document.getElementById("num1").value);
var b = parseFloat(document.getElementById("num2").value);
var ans = a + b;
document.getElementById("sum").value = ans;
检查这个
使用JavaScript函数
在转换为数字之前,它们不是数字,而是字符串。转换的方法有很多种,这就是我所说的典型的JavaScript初学者问题。别担心,每个JS开发人员都有过这个问题。如果它们是十进制的呢?您使用parseFloat而不是ParseInt,您省略了基数;这是故意的吗?@Teemu在回答时使用了
parseInt
@Teemu:no,但parseInt()
确实如此;在原始答案中使用(在宽限期内编辑)。
function add(){
var a = document.getElementById("num1").value;
var b = document.getElementById("num2").value;
var ans = Number(a) + Number(b) ;
document.getElementById("sum").value = ans;
}