声明变量不赋值为什么会返回undefined

声明变量不赋值为什么会返回undefined,null和undefined有什么区别

null是空值
undefined是未定义
null是可以主动赋值的,你可以把变量赋值为null,然后判断它是不是null
而undefined是不可以主动赋值的,它就是没定义或定义了但没赋值的一种状态,相当于没有这个变量。