【发布时间】:2017-01-09 06:17:12
【问题描述】:
我正在根据字典键做决定,我只有两种类型的键,数字和字母,
var _dict = { 'a':'one', 'b':'two', '1':'three' };
$.each( _dict, function( key, value ){
if( parseInt( key ) === NaN ) {
// this statement always evalute to false
} else {
}
});
如果我打印console.log(parseInt('a')),它也会返回NaN
我已经从这个问题javascript parseInt return NaN for empty string找到了解决方案
但我想知道为什么它总是评估为假。
【问题讨论】:
-
NaN != NaN,使用isNaN(parseInt( key ))或在你的情况下使用!parseInt( key ) -
因为 IEEE 754 是这么说的
-
和 NaN !== NaN 因为它在开始时是这样,现在更改它可能会破坏 www(或它的一部分)
标签: javascript jquery