简单理解js闭包

2018-06-24 01:28:46来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

周末闲暇,分享一下自己理解的js闭包原理,虽然平时用的少,但是也必须掌握的。

    我们做前端的应该都了解 Javascript 中的GC机制(垃圾回收机制),如果一个对象不再被引用,那么这个对象就会被 GC 回收,否则这个对象一直会保存在内存中。

我们看下下面这个简单的demo,非常简单,但是能基本说明闭包的原理:

function outer(){

  var count = 0;

  function inner(){

    count ++;
     console.log(count);

  }

  return inner;

}

var fn= outer();

fn();//输出:1

fn();//输出:2

fn();//输出:3

大家看到上面的输出结果应该对闭包有所了解了吧!

最后:我自己对js闭包使用的结论!

          1.当我们需要在模块中定义一些变量,并希望这些变量一直保存在内存中但又不会“污染”全局的变量时,就可以用闭包来定义这个模块。

   2.不必要的闭包只会徒增内存消耗!

 

 

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:js 依据“;”折行

下一篇:three.js探索笔记一 (three.js 的起步及渲染思想)