undefined 和 null 的异同

在javascript中,undefined和Null是两个比较特殊的值。但有时候在判断时就有点迷糊。依个人浅见,整理如下:

1、数据类型

  众多周知,在javascript中存在五种基本类型,即undefined,null,boolean,number以及array。

  因此可以认为undefined和null为两种数据基本类型。但区别在于,undefined为不能确定类型的变量值,而null为一个空对象指针。

2、== 与 ===

  由于javascript在判断两个数据==时,会进行类型转换的问题。而在进行===时,则是针对数据内容和数据类型的完整性判断。  

  Null表示一个空对象指针,在进行typeof检测时,typeof NULL 会显示为object。因此,在定义变量时应初始化其值为null。

  实际上,undefined派生自null,依照ECMAScript-262规定,在判断相等与否时,undefined == null 会返回true;而undefined === null则返回false。

  

原文地址:https://www.cnblogs.com/bluers/p/3365240.html