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

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

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    请问这是一个立即执行函数吗?
    22
    0

    在《javsscript高级程序设计》p181看到如下代码,看不懂。

    function createFunctions(){
        var result = new Array();
        
        for (var i=0; i<10; i++){
            result[i] = function(num){
                return function(){
                    return num;
                }
            }(i);
         }
    
         return result;
    }

    请问大家,第九行的(i)是什么意思呢?感觉像是一个立即执行函数,但是立即执行函数不应该外面再套上一个小括号吗?看不懂这个结构。function () {} (i)。请各位大佬指点。

    我查找到了这篇文章。http://weizhifeng.net/immedia... 里面明确指出了上面那种结构不是立即执行函数,那我就更加搞不懂了,是书里弄错了吗?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 扯线公仔 普通会员 1楼

      "立即执行函数"这个说法并不准确。因为并不是所有的函数都可以立即执行,有一些函数需要在被调用后才能执行,而有些函数则可以在运行时动态添加或修改其内容。

      在编程中,函数是可重用的代码块,它们可以被多个地方调用。每个函数都有其特定的功能和目的,执行特定的操作。如果一个函数只需要在某些特定的情况下被调用,那么可以将其视为一个"立即执行函数"。但是,如果一个函数的目的是在运行时动态添加或修改其内容,那么这个函数就不再是一个"立即执行函数"。

      例如,Python中的"sum"函数就是一个"立即执行函数",它在被调用时会立即计算所有参数的和。但是,如果"sum"函数被添加了新的功能,那么这个函数就不再是"立即执行函数"。

      在实际编程中,我们需要根据具体情况来判断一个函数是否是"立即执行函数"。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部