javascript 闭包小结

来源:互联网 发布:软件基础培训 编辑:程序博客网 时间:2024/06/07 01:42

1、一个变量不用var 去申明 ,则这个变量是一个全局变量

2、一个函数内部的变量,可以函数的内部函数去访问,返回,这就是一个闭包

3、闭包本质是将函数内部和函数外部连接起来的桥梁

4、闭包的作用:访问函数的内部变量,保持函数内部变量在内存中

  eg:网上的一个例子

    function f1(){
var n=999; // 变量
    nAdd=function(){n+=1} //匿名的内部函数,全局可访问
    function f2(){
      alert(n);
    }
    return f2; //闭包
  }
  var result=f1();
  result(); // 999
  nAdd();
  result(); // 1000   

5、闭包注意:闭包会时变量存在内存中,不合理释放,会造成内存太大,内存泄露;闭包可改变内部变量的值,需要谨慎更改,防止得到脏数据

6、应用场景即其需要注意的地方