javascript闭包求解

    <script>

      function f1(){

        var n=999;

        function f2(){

          alert(n); 

        }

        return f2;

      }

      var result=f1();

      result(); // 999

      f1()();//999

      f1();错误

    </script>

这里直接调用f1()为什么不行呢,为什么要赋给一个变量,然后再调用

杨__羊羊
浏览 434回答 1
1回答

忽然笑

直接调用f1(),执行结果就是return出整个f2函数,如果要直接调用f1就返回999,可以把return f2改成f2()。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript