函数赋值给变量

来源:互联网 发布:股票质押式回购 知乎 编辑:程序博客网 时间:2024/05/21 06:02
<script type="text/javascript">    function hi() {        var a = 1;        return function () {            document.writeln(a++);        };    };    var aaa = hi();    var bbb = hi;    aaa();//1    aaa();//2    alert(bbb());//result:function () { document.write(a++);}</script>


函数带括号与不带括号赋值给变量是有区别的:带括号赋值得到的是返回值运行的结果,返回的匿名函数有一个闭包,所以每次调用的时候使用的是同一个a;不带括号赋值得到的是函数表达式。

0 0
原创粉丝点击