Null 和 undefined 的区别? 什么情况下会出现undefined?


null:表示一个空对象指针,现阶段默认为是对象的占位符,是一个原始值,表示空值。

undefined:正常情况下,只声明未定义,默认值就是undefined。


typeof检测数据类型:

null // object

undefined // undefined

(null === undefined)          //  false

(null  ==  undefined)          // true

null和undefined值相等,但是类型不相等。


JS 什么情况下会出现undefined?

(1)在变量提升(预解析)阶段,只声明未定义,默认值就是undefined。

(2)函数定义没有返回值(return或者return后面什么也不带),默认的返回值就是undefined。

(3)函数定义形参不传值,默认就是undefined。

(4)对象没有这个属性名,属性值默认就是undefined。

(5)在数组的find方法中,没有找到的情况下是undefined。

你可能感兴趣的:(Null 和 undefined 的区别? 什么情况下会出现undefined?)