我正在创建一个小计算器。部分内容允许您输入最多4个数字,但您也可以只输入1,2或3个数字。我有代码工作,除了当我只输入1,2或3个数字时,我得到的NaN结果是我没有输入的数字。
如何摆脱NaN的结果?
用于分割输入表单数据的jQuery是 -
var numbers = num4.split(" ");
var firstNumber = parseInt(margins[0], 10),
secondNumber = parseInt(margins[1], 10),
thirdNumber = parseInt(margins[2], 10),
fourthNumber = parseInt(margins[3], 10);
console.log(firstNumber, secondNumber, thirdNumber, fourthNumber);
var shorthand1 = parseInt (firstNumber, 10) * 1;
var shorthand2 = parseInt (secondNumber, 10) * 1;
var shorthand3 = parseInt (thirdNumber, 10) *1;
var shorthand4 = parseInt (fourthNumber, 10) *1;
我只是
shorthand1 + shorthand2 + shorthand3 + shorthand4
结果显示在页面上的div中。
问题是,如果我输入“10 10 10”而不输入第四个号码,我会得到
的结果10 10 10 NaN
我可以检查NaN并且不会处理该结果吗?
答案 0 :(得分:3)
您可以使用Javascript isNaN(value)
函数检查某个值是否为NaN。
答案 1 :(得分:2)
您可以在js。
中查看 isNaN()请注意,isNaN()函数仅检查值的“数字性质”,而不检查值是否为有限值。要检查数字是否有限,您应该使用JavaScript的isFinite()。
答案 2 :(得分:1)
isNaN()
函数确定某个值是否为非法数字(非数字)。
如果值为NaN,则此函数返回true,否则返回false。
<script type="text/javascript">
document.write(isNaN(123)+ "<br />");
document.write(isNaN("Hello")+ "<br />");
document.write(isNaN(NaN)+ "<br />");
</script>
输出:
假
真正
真正
对于您的情况,您可以检查如下:
<html>
<body>
<script type="text/javascript">
if(!isNaN(123)){
document.write(isNaN(123)+ "<br />");
}
if(isNaN("Hello")){
document.write(isNaN("Hello")+ "<br />");
}
</script>
</body>
</html>