请教一个形参和实参的问题

var test = (function(i){return function(){
        alert(i*2);
    }}(2));
    test(5)
    //我的理解,这个test(5)的实参没有传进去啊,这是为什么
阅读 2.2k
2 个回答

这么跟你说吧,外面的function后面不是有个(2)吗,那是立即执行了外面的函数并将参数i=2代入。也就是说test=function(){alert(2*2)}压根就没有参数

返回的函数没带参,怎么传的进去。

var test = (function(i){
                return function(a){
                           alert(i*a);
                       }
            }(2));
test(5)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题