JS中 NaN的问题

145 阅读1分钟

NaN == NaN 结果是 false。

NaN意思为Not a Number,js中number数据类型中除了整型和浮点型,还有一个特殊的值 NaN。
它表示不是一个number,而是属于一个不确定的范围值,它的值和类型都可能不等,并且它无法转化。

可以简单理解就是:
NaN == NaN,这是两个非数值的任意值比较, NaN 与所有值都不相等,包括它自己,所以会等于false。

一般情况下,可以使用 isNaN() 来判断一个值是否是数字。

通过isNaN(val),判断val的值是否为NaN, 通过 true 和 false 进行三目运算符的判断 。

`${isNaN(val.value)?0:val.value}`