首页 > 代码库 > js闭包

js闭包

js闭包

  在正常的JavaScript执行中,内存无法立即回收的有两种情况:
  1、全局变量的引用
  2、闭包

  闭包是js的高级特性 ,闭包就是通过内部函数把外部函数中的变量暴露出去,一旦有变量引用了这个外部函数,这个外部函数将不会释放,同时这个外部函数中的变量也不会释放。

 

function outsideFun(){
     var count=0;
     function innerFun(){
        count++;
        console.log(count);
        return count;
    }
    return innerFun;
};

var quoteFun=outsideFun();
quoteFun();
quoteFun();

  打印结果:

     1

     2

总结:闭包— 函数不释放,函数中的变量不释放。

js闭包