在Javascript中:
NaN === NaN; // false
Run Code Online (Sandbox Code Playgroud)
我试图确定什么时候isNaN(foo)不仅仅等于+foo"是" NaN.但是我不知道怎么判断是否有什么东西NaN除了使用之外isNaN,对很多东西都是肯定的,其中没有===NaN.
所以我认为正确的方法是解决其他可能性:
typeof NaN === 'number' // true
Run Code Online (Sandbox Code Playgroud)
所以我想
typeof(foo) === 'number' && isNaN(foo)
Run Code Online (Sandbox Code Playgroud)
是最接近我的想法.这是有道理的,因为它NaN是唯一不是数字或其他数字的数字.这是正确的,这是最好的方法吗?
使用它对您有利:
foo !== foo
Run Code Online (Sandbox Code Playgroud)
这相当于typeof foo === 'number' && isNaN(foo),而正是Underscore.js用来检查准确NaN,太.
| 归档时间: |
|
| 查看次数: |
245 次 |
| 最近记录: |