isNaN()用来判断一个对象是不是不是数字,如果不是数字,返回true,否则,返回false。
var a = 1; isNaN(a) //false
var b = 'abc'; isNaN(b) //true
var c = '1'; isNaN(c); //??
上面??那里应该返回什么呢?按照之前所说,c是一个字符串,所以应该返回一个true。
但是我们验证之后发现竟然返回了一个false,表明isNaN()把字符串"1"看成了一个数字。
这是因为isNaN()会自动将判断对象尝试转换成数值类型,如果转换成功,则返回false,否则返回true。
相关文章推荐: