48

可能重复:
比较 Javascript 中的 NaN 值是否相等

谁能告诉我为什么这不起作用?

if(inbperr == NaN) {
    document.getElementById('inbclo').value = "N/A";
}
else {
    document.getElementById('inbclo').value = "%" + inbperr;
}

我希望它返回“%NaN”,而不是返回百分比值或“N/A”。

4

2 回答 2

88

NaN是不寻常的:它们不等于任何东西,甚至它们自己。您需要使用isNaN(inbperr)来判断一个值是否为 NaN。

于 2012-07-06T00:32:03.970 回答
2

NaN 不是数字。少数 JavaScript 有毒类型之一。它可以将整个表达式简化为 NaN。

http://www.crockford.com/javascript/encyclopedia/

于 2012-07-06T00:34:06.623 回答