我认为第一个条件应该为true,因为参数x的参数为Number.Nan。它肯定与第一个条件if中的另一个Namber.Nan相等。但是我显然是错的。为什么? x与Number.NaN进行比较时的值是什么?
function clean(x) {
if (x === Number.NaN) {
// can never be true
return null;
}
if (isNaN(x)) {
return 0;
}
}
console.log(clean(Number.NaN));
// expected output: 0