在JavaScript中,我们常常会见到NaN,那么NaN是什么 ?NaN == NaN 的结果是什么?为什么?
NaN 属性是代表非数字值的特殊值,该属性用于指示某个值不是数字。可以把 Number 对象设置为该值,来指示其不是数字值。
需要注意的是:在执行运算时,若是非加法运算,只要有NaN参与,执行结果都是NaN;若是加法运算,有NaN参与,那么就执行字符串的拼接操作。
var str='JavaScript';
var res1=100-str1;
console.log(res1);
//执行结果为:NaN
var str='JavaScript';
var res1=100+str1;
console.log(res1);
//执行结果为:NaNJavaScript
NaN==NaN的结果是什么?
答案是:false;
NaN虽然表示的是非数字,但这个非数字也是不同的,所以NaN不等于NaN;
var str='JavaScript';
var res1=100-str1; //NaN
var res2=100-str1; //NaN
console.log(res1==res2);
//执行结果为false