1. 标记清除
最常用的一种垃圾回收机制
<script>
function fn(){
var a = 10; //标记了一下
alert(a); // 还在标记着
}
fn();
// 没有再用到这个函数中的 a 了,那么在内存中,把 a就销毁了
</script>
2. 引用计数
不常用的一种方法
<script>
function fn(n){
var arr = n; // 计数 +1
var brr = n; // 计数 +2
// 不用了 就 -1 直到 0 的时候才能清除
}
var obj = new Object();
fn(obj);
</script>
3.手动清除
把不用的变量或者函数或者对象赋值为空(null),就可以了。
<script>
function fn(){
var obj = new Object();
obj.userName = "张三";
var obj2 = new Object();
obj2.userName = "李四";
// 当 obj 不用的时候,直接写
obj = null; // 这样就是手动清除
}
</script>