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