我是 Java Script 的新学习者。我的数学方程有问题。它显示错误的答案。 请帮我找出错误。
<html>
<head>
<title>calculation of (p+r)*(n+r) </title>
<script>
function calculate()
{
var p = document.getElementById("p").value;
var n = document.getElementById("n").value;
var r = document.getElementById("r").value;
var calculationa= p+r;
var calculationb= n+r;
var cal_final=Number(calculationa)*Number(calculationb);
document.getElementById("result").innerHTML=cal_final;
}
</script>
</head>
<body>
<h1>calculation of (p+r)*(n+r)</h1>
p: <input id="p"><br/>
n: <input id="n"><br/>
r: <input id="r"><br/>
<button onclick="calculate()">calculate</button>
<p id="result"></p>
</body>
</html>
这就是我要解的方程。 数学显示这个结果是不正确的。 /image/Ir9hs.png
我该如何解决这个问题?
最佳答案
这些值作为字符串分配给p
、n
和r
。所以,p+r = 1+2 = 12
。
使用parseInt()
将值解析为Integer并进行计算。或者使用parseFloat()
function calculate() {
var p = parseInt(document.getElementById("p").value);
var n = parseInt(document.getElementById("n").value);
var r = parseInt(document.getElementById("r").value);
var calculationa= p+r;
var calculationb= n+r;
var cal_final=Number(calculationa)*Number(calculationb);
document.getElementById("result").innerHTML=cal_final;
}
<h1>calculation of (p+r)*(n+r)</h1>
p: <input id="p"><br/>
n: <input id="n"><br/>
r: <input id="r"><br/>
<button onclick="calculate()">calculate</button>
<p id="result"></p>
关于javascript - javascript数学方程显示错误答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37202611/