zoukankan      html  css  js  c++  java
  • 闭包

    1.  请解释一下什么是闭包

    对于闭包,相信每个人都有自己的见解,并且网上一大推关于闭包的概念,我的理解是能够访问到其包含(外部)函数内部变量的函数。

    主要有两个特性:

    一个是可以读取其包含函数内部的变量;另一个就是让这些变量的值始终保持在内存中。

    使用闭包的注意点:
    过多使用会造成内存泄露的现象,因为闭包会引用其包含函数作用域的变量对象,使得即使包含函数执行完毕后,其作用域的变量对象不会被销毁,即其占用的内存无法得到回收,直至闭包执行完毕后才会被销毁。所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。

    function A(){
        var S=0;
        function B(){
            alert(++S);
        }
        return B;
    }
    var C=A();
    C();
    
  • 相关阅读:
    Android网络通信的六种方式
    launcher4.0加载
    MessageDigest使用 完成MD5加密
    java集合
    Context
    android字库使用
    Java动态代理
    积累
    sql游标
    无限级CSS树形菜单
  • 原文地址:https://www.cnblogs.com/zhangwenkan/p/4263333.html
Copyright © 2011-2022 走看看