javascript闭包的使用
博客专区 > HTCKF 的博客 > 博客详情
javascript闭包的使用
HTCKF 发表于3年前
javascript闭包的使用
  • 发表于 3年前
  • 阅读 112
  • 收藏 11
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

摘要: 如果变量n被定义成全局变量,那么会一直被存放在内存里,除非浏览器关闭,但是有些情况我们不得不经常使用某些局部变量,那么使用闭包的方法则可以满足需要

今天学习 了下javascript语言,以前从未想过为什么要用匿名和闭包,对于js局部变量和全局的概念理解未深刻,考虑下面代码:

Js代码
  function f1(){
    var n=999;
    nAdd=function(){n+=1}
    function f2(){
      alert(n);
    }
    return f2;
  }
  var result=f1();
  result(); // 999
  nAdd();
  result(); // 1000


如果变量n被定义成全局变量,那么会一直被存放在内存里,除非浏览器关闭,但是有些情况我们不得不经常使用某些变量,那么使用闭包的方法则可以满足需要,但是需要注意的是:

由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。这里引用了网上一篇文章的内容:http://www.jb51.net/article/24101.htm

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 4
博文 36
码字总数 10749
×
HTCKF
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: