### null
* * * * *
> null是第二个只有一个值的数据类型,这个属性的特殊值是“null”。从逻辑上来看null值表示一个空对象指针,而这也是typeof操作符检测null时会返回“object”的原因,如下所示:
~~~
let n = null
console.log(typeOf n) //object
~~~
> 实际上undefined值是派生自null值的,因此,null与undefined之间的相等操作(==)始终会返回true,不过需要注意的是,javascript中(==)操作与(===)操作以及(=)操作是三种不同的操作,(===)属于严格等于,而(=)操作相当于赋值操作,如下所示:
~~~
undefined = null
//null
undefined == null
// true
undefined === null
//false
~~~
> 尽管null与undefined有这么一层关系,但任何情况下都没有必要将变量的值显式设为undefined