NaN,非数值(Not a Number),是一个特殊的数值,用于表示本来要返回数值的操作数未返回数值的情况(防止抛出错误)。
- 任何涉及NaN的 操作都会返回NaN。(NaN/10)
- NaN与任何值都不相等,包括NaN本身:下面一行代码返回false。
alert(NaN==NaN);//false
isNaN()函数
接受一个参数,参数可是任何类型,函数确定传入的参数是否“不是数值”,isNaN()接受到一个值之后,会尝试将这个值转换为数值,例如“10”或者Boolean值。任何不能被转换为数值的值导致函数返回true。
alert(isNaN(NaN));//true
alert(isNaN(10));//false,10是一个数值
alert(isNaN("10"));//false,可以转换成数值10
alert(isNaN("blue"));//true,不可以转换成数值
alert(isNaN(true));//false,可以转成数值1