判断一个值是否等于 NaN,只能用 value !== value
因为NaN不等于自身,也不等于任何字符。
举个例子:
function bouncer(arr) {
// Don't show a false ID to this bouncer.
var array = arr.filter(function(value){
if (value === false || value === null || value === 0 || value === "" || value === undefined || value !== value){
return false;
}
return true;
});
return array;
}
bouncer([false, 0, NaN, undefined, ""]);
如果不使用 value !== value 的话则返回数组中会出现[null],而不是[]