以下是我为了尝试添加用户输入的两个数字而执行的JavaScript,但我得到的结果是" NaN":
<HTML>
<HEAD>
<TITLE>JavaScript-Functions</TITLE>
</HEAD>
<BODY>
<H1>JavaScript-Functions</H1>
<P>This function will add two numbers.</P>
<script type="text/JavaScript">
<!-- This is a math function -->
var x = prompt("Please enter the first number: ");
var y = prompt("Please enter the second number: ");
function addTwo(x, y)
{
var xNum;
xNum = parseInt(x);
var yNum;
yNum = parseInt(y);
return xNum + yNum;
}
document.write(addTwo(x, y));
</script>
</BODY>
</HTML>
答案 0 :(得分:1)
除了html评论
之外,这里的一切看起来都不错<!-- This is a math function -->
脚本标签中的。
答案 1 :(得分:0)
如果您将数字作为输入意味着它肯定会起作用,否则会抛出错误“NaN”。
答案 2 :(得分:0)
尝试使用回调。这是由于javascript的异步事件I / O模型。
var x = prompt("Please enter the first number: ");
var y = prompt("Please enter the second number: ");
function addTwo(x, y, callback){
var xNum;
xNum = parseInt(x);
var yNum;
yNum = parseInt(y);
var result = xNum + yNum;
callback(result);
}
addTwo(x, y, function(result){
document.write(result);
});
CODEPEN已编辑:链接
答案 3 :(得分:0)
您可以摆脱parseInt()
并在提示前放置+
。这将解析提示响应并将其从字符串更改为整数。
<script type="text/JavaScript">
<!-- This is a math function -->
var x = +prompt("Please enter the first number: ");
var y = +prompt("Please enter the second number: ");
document.write(x, y);
</script>
就像那样。因此,我会计算+
符号可以执行的三项操作:
1.连接字符串和变量
2.当放在窗口对象前面时,它就像parseInt()
3.及其通常的功能,添加整数。