undefined 代表未定义,就是应该有值,但还没赋值。
null代表空值,空引⽤。
区别是:(1)null转为数值是为0,undefined转为数值时为NaN。
(2)null通过type of 判断类型时,结果是object类型,undefined的类型是
undefined。
实际中出现undefined的场景可能有:
a、变量被声明了,但没有赋值时,就等于undefined;
b、调⽤函数时,应该提供的参数没有提供,该参数等于undefined;
c、访问⼀个对象中没有的属性,则打印后可以看到为undefined;
d、函数没有返回值时,默认返回undefined。
出现null的场景可能有:
a、作为对象原型链的终点出现;
b、当我们访问⼀个不存在的dom的节点时。