这是JavaScript代码(使用过控制台),对此代码有一点疑问
var foo = 10;
var boo = undefined;
if((foo + boo)==NaN){console.log("Not a Number !!!");}
//>undefined
if((foo + boo)===NaN){console.log("Not a Number !!!");}
//>undefined
//>Not a Number !!! (Expected)
答案 0 :(得分:2)
等式运算符(==和===)不能用于测试值 NaN的。使用Number.isNaN()或isNaN()代替。
NaN === NaN; // false Number.NaN === NaN; // false isNaN(NaN); // true isNaN(Number.NaN); // true
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NaN
答案 1 :(得分:1)
请参阅以下网址以修复您的问题....
检查号码是否是非法号码:
var a = isNaN(123) + "<br>";
var b = isNaN(-1.23) + "<br>";
var c = isNaN(5-2) + "<br>";
var d = isNaN(0) + "<br>";
var e = isNaN("Hello") + "<br>";
var f = isNaN("2005/12/12") + "<br>";
res的结果将是:
false
false
false
false
true
true