Javascript JQuery回调函数流

Javascript JQuery回调函数流,javascript,jquery,Javascript,Jquery,我对jquery非常陌生。所以我在google上搜索jquery回调函数,得到了一个代码,但我不理解代码的流程。所以请任何人帮助我理解编码流程 这是密码 function mightyplugin(foo, callback){ // big code block here callback.apply(this, [foo]); } mightyplugin("Bar!", function(param){ alert(param); }); 这里我将把“Bar!”作为一个

我对jquery非常陌生。所以我在google上搜索jquery回调函数,得到了一个代码,但我不理解代码的流程。所以请任何人帮助我理解编码流程

这是密码

function mightyplugin(foo, callback){
// big code block here

   callback.apply(this, [foo]);
}

mightyplugin("Bar!", function(param){
    alert(param);
});
这里我将把
“Bar!”
作为一个参数传递给函数
mightyplugin
和一个匿名函数

  • 回调.应用
    的作用。这个关键字实际包含的内容是什么。。。。为什么需要它
  • 为什么
    [foo]
    作为数组传递
  • 如果我像这样传递许多参数,语法会是什么

    mightyplugin("Bar!","1stone","2ndone", function(param){
        alert(param);
    });
    
  • 我知道回调函数在第一个函数完成时调用,但这里的情况不同。。。为什么?

    请解释…

    谢谢

    首先,这不是jquery。这是一个如何独立于jquery处理回调函数的示例

    要回答您的问题:

  • 有关
    apply
    的详细信息可在此处找到:
  • 如果阅读上面的链接,您将看到传递给
    apply
    的第二个参数是一个参数数组
  • 我不确定您对这些其他参数的目的是什么,但您可以简单地向函数中添加更多参数:

  • 这是当前函数上下文,在您的情况下可能是plugin
  • foo
    作为数组传递,因为apply需要一个数组作为参数
  • mightyplugin([1,2,3,4],function(){…})
    然后
    回调。应用(this,foo)

  • 你可以在Mozilla开发者网络和它的兄弟上阅读更多内容

    你想将回调应用于什么?我只需要了解jquery回调技术就可以了。对不起,我的错。没有看到您正在编写插件。有一段时间我看到回调函数是类似callback.call的调用(这个[foo,foo1,foo2]);而不是callback.apply(这个[foo,foo1,foo2])。因此,我需要知道申请和调用之间的区别。何时使用call()和何时使用apply()。plzz把焦点放在了这里。谢谢
    function mightyplugin(foo, foo1, foo2, callback){
       // big code block here
    
       callback.apply(this, [foo, foo1, foo2]);
    }
    
    mightyplugin("Bar!","1stone","2ndone", function(param){ alert(param); });