Null 类型同样只有一个值, 就是 null , 从逻辑上讲, null 值表示一个空对象指针, 这也是给 typeof 传一个null会返回 “object” 的原因

    1. let car = null;
    2. console.log(typeof car); // "object"
    1. 保存对象值的变量时,建议使用null 来初始化
    2. undefined值是由null值派生而来 ,才会出现 **null == undefined // true**
    3. null 和 undefined 有关系,但是用途是不一样的。 …
    4. null 也是一个假值
    1. // 1. 保存对象值的变量时,建议使用null 来初始化
    2. // 2. undefined值是由null值派生而来 ,才会出现 null == undefined // true
    3. console.log(null == undefined) // true
    4. // 3. null 也是一个假值
    5. let message = null;
    6. if (message) {
    7. // 不会执行
    8. }
    9. if (!message) {
    10. // 这里会执行
    11. }

    即使null 和undefined 有关系,它们的用途也是完全不一样的。如前所述,永远不必显式地将 变量值设置为undefined。但null 不是这样的。任何时候,只要变量要保存对象,而当时又没有那个 对象可保存,就要用null 来填充该变量。这样就可以保持null 是空对象指针的语义,并进一步将其 与undefined 区分开来