• javaScript闭包和垃圾收集器


    如果人口一直增长,地球总有一天会爆炸的。

    浏览器同样如此,内存有限的情况下,如果里面的东西越来越多,总有一天会不堪重负。

    垃圾收集器就是用来清理不再用的内存空间的,执行环境会负责管理代码执行过程中使用的内存。而垃圾收集的策略有二,现代浏览器最常用的垃圾收集方式是标记清除

      1.给内存中的每一个变量都加上标记;

      2.去掉环境中的变量以及被引用的变量;

      3.那些被标记的变量就要被垃圾处理器清除出去。

    在IE7版本之前,浏览器垃圾收集器是按照内存分配量运行的,当内存占用到了一个临界值,垃圾收集器就会运行。在有很多的变量的情况下,垃圾收集器频繁运行就会导致浏览器的崩溃。

    闭包:

    垃圾收集器是针对局部变量的;

    为了让变量一直在内存中,我们首先会想到定义一个全局变量,但是全局变量也许会在我们后面的使用中不小心改变了它的值,我们可以用局部变量来保护,但问题又来了,局部变量怎样访问呢,于是就出现了闭包。闭包的例子有很多,比如一个函数里面嵌套一个函数,这样做的目的就是让函数外部可以访问里面的变量。

    JS不像java或其他面向对象语言有private属性,用闭包事实上充当了这样的角色。

  • 相关阅读:
    jqurey技术总结
    ie浏览器兼容问题小结
    FIS的合并压缩技术
    对js中数组的一些总结
    浅谈如何面向对象进行封装
    13th week blog
    12th week blog
    11th week blog
    10th week blog
    9th Week blog
  • 原文地址:https://www.cnblogs.com/shuiqing/p/7131646.html
Copyright © 2020-2023  润新知