再次讲解js中的回收机制是怎么一回事。

原文链接:http://www.cnblogs.com/pssp/p/5211637.html

简单看一下区别:

//运行完就释放了

function a(){
  var num = 10;
  return function(){
    num ++;
    console.log(num);
  }
}
a()(); //11
a()(); //11

//形成了闭包

function a(){
var b = 0;
return function(){
b ++;
console.log(b);
}
}

var d = a();
d();//1
d();//2

总结:

    1、如果一个对象不被引用,那么这个对象就会被GC回收;
    2、如果两个对象互相引用,但是没有被第3个对象所引用,那么这两个互相引用的对象也会被回收。

要看具体内容去看原文链接。

原文地址:https://www.cnblogs.com/gavinyyb/p/6288661.html