1 undefined
undefined 是一个数据类型,它只有一个值,就是undefined。
如果在js中声明了一个变量,但是对变量没有初始化,那么该变量的默认值就是undefined,未声明的变量同样是undefined。(注意undefined就是一个值,并不是一个字符串)
可以用下面的代码验证
var test;
alert(test); //undefined
alert(test == undefined) //true
alert(test == "undefined") //false
alert(typeof test1); //undefined
只需记住:在一个变量没有被声明 或者没有赋值时 这个变量的类型一般都是undefined
2 null
同样的,null也是一个数据类型,它也只有一个值,就是null。(注意null就是一个值,并不是一个字符串)
null表示的是一个尚未存在的对象。其实null是一个对象。如果你的函数或者方法返回的是对象,当时又找不到该对象,返回值就是null。
3 NaN
NaN是一个Number类型的值,但是奇怪的是,他表示的‘非数’。举个例子或许大家就明白了
alert(isNaN("yes")); //true
alert(isNaN("123")); //false
isNaN()是一个用于判断一个值是不是NaN的函数。
有趣的是 alert(NaN == NaN) 的结果是 false 。