undefined和null的异同点

字数 123阅读 142

概述:

在JavaScript中undefined和null两个值都是表示"无"的值,在使用中undefined和null,几乎没有什么区别。

相同点:

  1. 都表示空
  2. 在转为布尔值时都是false
  3. undefined == null 表达式的值是true,二者的值是相等的

差异点

undefined 表示缺少值,此处应该有一个值,但是没有给

a. 变量声明了,但是没有赋值,值为undefined
b. 调用函数时,参数没有被传递,默认值是undefined
c. 函数默认的返回值是undefined
d. 对象中没有赋值的属性,值为undefined

null 表示没有对象,尚未存在的对象,即该处不应该有值

a. HTML获取元素节点时,不存在的返回null
b. typeof null 返回的是object
c. 作为对象原型链的终点

推荐阅读更多精彩内容