在需要判断一个值是否为空时,会想到undefined和null。本文主要记录他们的区别。
基本数据类型
基本数据类型主要包括:Undefined、Null、Boolean、Number和String。Undefined数据类型只有唯一的值undefined,Null数据类型也只有唯一的值null。
Undefined类型:
- 声明了一个变量,但未对其初始化,这个变量的值就是undefined。也可以显式地把一个变量初始化为undefined。
var data;
console.log(data===undefined);//true
data=1;
console.log(data);//1
data=undefined;
console.log(data);//undefined
undefined主要用于比较区分空对象指针(null)与未经初始化的变量的情况。一般不会将已经初始化的值再赋值undefined来表示空值,这样是没有意义且不可取的。
- 对未定义的变量执行typeof操作符也会返回undefined。
console.log(typeof data