zoukankan      html  css  js  c++  java
  • 深入探究什么是闭包?

    代码举例:
    f1();
    function f1 () {
    var a = '闭包';
    f2();
    function f2() {
    console.log(a)
    }
    }

    什么是闭包?
      从上面的代码中可以看出,闭包就是在一个函数中定义一个变量,这个变量在函数外部是不能访问的,但是这个函数的内部定义的子函数是可以正常访问的,那么f2这个函数就属于闭包。

    使用闭包需要注意什么?

      1.由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。

      2.闭包会在父函数外部,改变父函数内部变量的值。所以,如果你把父函数当作对象(object)使用,把闭包当作它的公用方法(Public Method),把内部变量当作它的私有属性(private value),这时一定要小心,不要随便改变父函数内部变量的值。

  • 相关阅读:
    nepenthes用法
    honeydctl命令
    honeyd路由拓扑
    Linux Samba服务器的安装
    honeyd使用
    FreeRTOS 事件标志组
    epoll函数
    Java程序:从命令行接收多个数字,求和并输出结果
    《大道至简》第一章读后感
    【诗词歌赋】 杂感- 贺小妹
  • 原文地址:https://www.cnblogs.com/qiuchuanji/p/8805341.html
Copyright © 2011-2022 走看看