isNaN()函数

NaN本身有两个非同寻常的特点。首先,任何涉及NaN的操作(例如NaN/10)都会返回NaN,这个特点在多步计算中有可能导致问题。其次,NaN与任何值都不相等,包括本身,例如:

alert(NaN==NaN) //false

针对这两个特点,定义了isNaN()函数。这个函数接受一个参数,该参数可以是任何类型,而函数会帮我们确定这个参数是否“不是数值”。isNaN()在接受一个值后之后,会尝试将这个值转换为数值。某些不是数值的值会直接转换为数值,例如字符串"10"或Boolean值。而任何不能被转换为数值的值都会导致这个函数返回true。例子:

console.log(isNaN(NaN)) //true

console.log(isNaN(10)) //false 10是一个数值

console.log(isNaN("10")) //false  可以转换成数值10

console.log(isNaN("blue")) //true 不能转换成数值

console.log(isNaN(true)) //false 可以被转化成数值1

 

你可能感兴趣的:(javascript)