闭包

1.什么是闭包?

       当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。

    直接上代码:

  1. //闭包  
  2. function test(){  
  3.     var arr = [];  
  4.     for (var i = 0; i < 10; i++) {  
  5.         //闭包的写法就是  一个圆括号里面包了一个匿名函  
  6.         //  把需要保存的值,通过参数传递  
  7.         (      
  8.             function(j)  
  9.             {  
  10.                 arr[j] =  function(){  
  11.                         document.write(j + " ");  
  12.                 }  
  13.             }(i)  
  14.         )  
  15.     }  
  16.     return arr;  
  17. }  
  18. var myArr = test();  
  19. for (var i = 0; i < 10; i++) {  
  20.     myArr[i]();  


2.闭包的作用:

就是访问函数内部的局部变量。函数内部的所有变量、数据,在函数执行完毕时,就全部销毁掉,一级函数返回二级函数,在外部保存一下二级函数,那么二级函数就不会被释放,我们就可以继续访问一级函数内部的变量和数据。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值