测试isFinite
函数我看到NaN
是无限数字(即使不是数字 :-)
)
isFinite(NaN) // returns false
这背后的逻辑是什么?为什么不NaN
有限?
答案 0 :(得分:9)
正如Dave Newton所说,NaN不是一个数字,然后你必须考虑它不是有限的也不是无限的。 这些也是如此:
NaN > 0 // false
NaN < 0 // false
您可能想阅读这些文章:
答案 1 :(得分:3)
因为它不是数值...而有限/无限仅适用于数字。
答案 2 :(得分:1)
因为无限数......仍然是一个数字。 NaN不是任何可能意义上的数字。
这就像Matrix中的错误。
答案 3 :(得分:1)
对NaN的任何算术运算的结果都是NaN。
对NaN的任何逻辑运算的结果都是错误的。
答案 4 :(得分:-3)
能够被计算的有限手段。它必须为isFinite返回true或false。我认为NaN无限是更有意义的。