我已经写了 javascript 和 html 代码,有人可以解决这个问题(我是初学者)。我得到的输出Ke = NaN而不是值,我尝试使用parseInt,但也许我没有以正确的方式做到这一点。请帮忙。提前致谢。我的代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Kinetic Energy of Molecules</title>
<script language="javascript">
function mycalc(){
var x = document.getElementById("variablex").value;
parseInt(document.getElementById("variablex").value);
var v = document.getElementById("variablev").value;
parseInt(document.getElementById("variablev").value);
var a = ( 2/3 );
var b = ( (v*v*v) + (Math.sin(30)) );
var c = ( 2 * (Math.cos()*Math.cos()) * x);
var d = ( a * (b/c));
alert("Ke = " + d)
}
</script>
</head>
<body marginwidth="70">
<h3>FORMULA:</h3>
<table>
<tr>
<td>
Ke = <u>2</u> * <u>(v^3 + sin30)</u>
</td>
</tr>
<tr>
<td>
         3   (2 * cos^2 * x)
</td>
</tr>
</table>
<br>
<form>
Enter value for v:
<input type="text" name="vv" id="variablev" placeholder="variable v" size="5">
<br>
Enter value for x:
<input type="text" name="vx" id="variablex" placeholder="variable x" size="5">
<br>
<input type="button" value="calc" onClick="mycalc()">
</form>
</body>
</html>
答案 0 :(得分:3)
Math.sin(30)
错了 - 三角函数以弧度为单位,而不是度。此外,如果它是一个常数,你也可以写... 0.5
。
Math.cos()*Math.cos()
并不代表什么,因为你没有提供论据。这就是你得到NaN
的原因。
你的意思是?
var Ke = 2 * (Math.pow(v,3) + 0.5) / (6 * Math.pow(Math.cos(x/180*Math.PI),2));