JS中的函数
function punch(){
var a,b,result;
a=document.getElementById('n1').value;
b=document.getElementById('n2').value;
var x=parseInt(a);
var y=parseInt(b);
result=x+y;
if (result===NaN)
result =0;
我知道这个条件是假的,它给出 x+y 的输出。在空字段上它总是返回 NaN 值 当将其更改为
if (result!==NaN)
result=0;
现在它变成了真的,但 x+y 也为 0。
document.getElementById('n3').value=result;
}
HTML 代码
<input type="text" id="n1" placeholder="Value 1"/>
<input type="text" id="n2" placeholder="Value 2"/>
<button type="button" onClick="punch()">Click For Answer</button>
<input type="text" id="n3" placeholder="Answer"/>
最佳答案
没有任何东西,包括 NaN
,是 ===
到 NaN
的。事实上,测试 NaN
的一种方法就是利用它!
if (result !== result)
result = 0; // must have been NaN!
您还可以使用isNaN()
:
if (isNaN(result))
result = 0;
关于JavaScript 设置函数默认值不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30110466/