普通变量回收
let a = 1;
a = null;
可以被回收
- 不被引用的(引用技术为0)
- 无法被访问到的
function a() {
const b = "233";
return `${b}---ccc`
}
a();
// 反例
function a1() {
b = "233"; // 此处不被回收,因为挂载到window对象上了
return `${b}---ccc`
}
a1();
不能被回收
- 引用计数不为0
- 循环引用
function a() {
const obj1 = {};
const obj2 = {};
obj1.name = obj2;
obj2.name = obj1;
}
a();