再谈null,undefined 的区别

146 阅读1分钟

区别

null表示一个对象 被 定义了,值为"空值"
undefined 表示不存在这个值

typeof undefined //'undefined'
undefined:是一个表示'无'的原始值或者说表示'缺少值',就是此处应该有一个值,但还没有定义.当尝试读取时会返回 undefined
例如变量被声明了,但没有赋值时,就等于undefined
typeof null //'object'
null:是一个对象(空对象,没有任何属性和方法)
例如作为函数的参数,表示该函数的参数不是对象
在验证null时,一定要使用===,因为==无法分别null和undefined
undefined表示'缺少值',就是此处应该有一个值,但是还没有定义

典型用法是

变量被声明了,但没有赋值时,就等于undefined
调用函数时,应该提供的参数没有提供,该参数等于undefined