• JS闭包与JS函数


    先说说在网上看到的一个闭包案例:

    var add = (function () {
    var counter = 0;
    return function () {return counter += 1;}
    })();
    function myFunction(){
    document.getElementById("demo").innerHTML = add();
    }

    这个案例代码综合度较高,再加上闭包,简直不要太懵逼!

    整理了下,将以上代码等效于下列代码:

    var add = (function () {
    var counter = 0;
    return function () {return counter += 1;}
    });
    var m=add();     //m===function () {return counter += 1;},m此时等同于函数
    function myFunction(){
    document.getElementById("demo").innerHTML = m();    //m()===return count+=1,m()值的是函数m的运行结果,即返回的counter值
    }

    这么转换后,瞬间就看懂了!其实所谓的闭包就是函数中的函数~

  • 相关阅读:
    IE11浏览器:请不要再叫我IE,谢谢
    Hadoop HA高可用搭建流程
    YARN
    MapReduce
    HDFS
    shell
    shell总结
    linux总结
    maven+log4j
    Spring
  • 原文地址:https://www.cnblogs.com/failte/p/9873758.html
Copyright © 2020-2023  润新知