账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    (已解决)js书上碰到一个疑问,来请教下
    33
    0

    //已解决,自己看的不仔细 [衰]

    在javascript高级程序设计里有这么一个例子:

    //为了实现result=[0,1,2 ....]

    function createfunctions(){
          var result = new Array();
          
          for(var i=0;i<10;i++){
               result[i]=function(num){
                     //这里不应该已经可以拿到和外部变量对象里断开连接的i?
                     return function(){
                          return num
                     }
               }(i)
          }
          
          return result;
    }

    疑问:第一个匿名函数里已经把i作为参数传进去了,以参数的按值传递,num应该已经得到了一个i的副本,相当于断开了和次级的变量对象里的i的联系。这个时候不就可以直接return num 吗?为什么还要return一个匿名函数里再return num?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部