这个javascript函数从哪里获取数据?

这个javascript函数从哪里获取数据?,javascript,function,arguments,parameter-passing,Javascript,Function,Arguments,Parameter Passing,我对javascript比较陌生。现在,我正试着去理解嵌入式函数,它的语法看起来很奇怪(我一直错误地试图依靠我的Java知识来理解它),但我已经掌握了窍门 到目前为止,我确实有一个问题。我正在研究一个功能与此非常相似的工作代码: function test(){ return function(d, i) { ... }; } 我的问题是,关于返回函数的数据来自哪里?我知道嵌入函数中的数据可以从其封装

我对javascript比较陌生。现在,我正试着去理解嵌入式函数,它的语法看起来很奇怪(我一直错误地试图依靠我的Java知识来理解它),但我已经掌握了窍门

到目前为止,我确实有一个问题。我正在研究一个功能与此非常相似的工作代码:

    function test(){
            return function(d, i) {
               ...
            };
    }
我的问题是,关于返回函数的数据来自哪里?我知道嵌入函数中的数据可以从其封装的父函数传递,但考虑到父函数本身没有参数,它看起来似乎没有实际传递的数据

作为说明,我浏览了所有其他“可能已经有你的答案的问题”,没有找到任何与我的问题相关的东西。我看到有几个很近,但没有一个是一针见血的。很多函数都有自己的参数的父函数/包含函数。

您的函数
test()
正在返回一个函数,而不是执行。因此,参数将由调用返回函数的人提供

function test() {
    return function(d, i) {
        ...
    };
}    

var innerFunc = test();

var result = innerFunc(1, 2);  // or call or apply

函数(d,i){}
既不处理
d
也不处理
i
。它只是简单地说“创建一个标记,当我得到这些数据时该做什么”。内部
函数(…){…}
中的任何代码都不会执行,除非使用
(the_func)(the_d,the_I)
调用该函数。谢谢您的评论!这个函数嵌套在一个宏大的方案中,因此很难精确地确定数据的来源,但我正在慢慢地深入研究并整理它!你的评论肯定让我走上了正确的道路!啊,谢谢你!您是对的,我正在查看的代码有一系列调用和回调,因此很难确定数据的来源。