最佳答案
很明显,Soooooo isNaN
在 JavaScript 中出现了以下问题:
isNaN('')
isNaN(' ')
isNaN(true)
isNaN(false)
isNaN([0])
返回错误,当他们似乎都是... 不是一个数字..。
在 ECMAScript 6中,草案包含了一个新的 Number.isNaN
,但是看起来(imo)这个也被破坏了..。
我希望
Number.isNaN('RAWRRR')
要返回 true,因为它是一个字符串,不能转换为数字... 但是..。
看起来我认为的东西... 不是一个数字,事实上,不是,不是一个数字..。
Http://people.mozilla.org/~jorendorff/es6-draft.html#sec-isfinite-number
MDN 上的例子说:
Number.isNaN (“ blabla”) ;//例如,对于 isNaN,这是正确的
我不明白这怎么会是“原来的 global isNaN 的更健壮的版本”当我不能检查,看看事情是不是一个数字。
这将意味着我们仍然需要进行实际的类型检查,以及检查 isNaN... 这看起来很傻..。
Http://people.mozilla.org/~jorendorff/es6-draft.html#sec-isnan-number
这里的 ES3草案基本上说,除了 Number.NaN 之外,所有东西都是假的
还有人发现这个坏了吗? 还是我不明白 isNaN 的意思?