JS中undefined和null的区别?什么时候应该赋值null?
undefined: 声明了变量,但未赋值。例如:var a;
null:声明了某一变量,并赋值,只是值为空。例如:var obj = null。
-------------------------------------------------------------------------------------------------------------------
---那么什么时候变量赋值为null,有什么意义?
变量a赋值为Object类型, var a = {name: xiaoming};
当对a进行一系列操作之后,不再需要变量a存在的时候, 人为地赋值a = null ——切断a与之前堆空间的联系,便于及时地把存储了{name: xiaoming}的堆内空间释放
注意,这只对Object类型(引用型)的变量有意义
-------------------------------------------------------------------------------------------------------------------
需要区分的是:
1. 当未明确声明变量A时,查找变量A → 找不到、会报错;
2. 当查找某一对象的属性a时,找不到则会返回undefined。
-------自学记录。欢迎指出错误,其它勿扰。-------