将函数作为参数传递,然后在jquery函数中执行它

bob*_*rus 7 javascript function callback

我想知道用jQuery制作这个简单(也许是愚蠢)的方法是哪种方法.

我有这样的功能:

function setSomething() { 
    make some stuff; 
}
Run Code Online (Sandbox Code Playgroud)

然后是另一个这样的函数:

generalFunction(par1, par2, par3) { 
    do other stuff; 
    execute function called in par3;    
}
Run Code Online (Sandbox Code Playgroud)

好吧,如果我写这样的东西它不起作用:

c=setSomething(); 
generalFunction(a, b, c);
Run Code Online (Sandbox Code Playgroud)

那么将函数作为另一个函数的参数调用然后在内部执行它的方法是什么?

我希望我很清楚.

任何帮助将不胜感激.

提前感谢您的关注.

Wil*_*eer 14

省略括号,然后可以在"generalFunction"函数中将参数作为函数调用.

setSomething(){
   // do other stuff  
}

generalFunction(par1, par2, par3) { 
    // do stuff...

    // you can call the argument as if it where a function ( because it is !)
    par3();
}

generalFunction(a, b, setSomething);
Run Code Online (Sandbox Code Playgroud)

  • +1.注意到同样的事情适用于使用`c`的问题中的代码,那就是你会说'c = setSomething; generalFunction(a,b,c);`(当然,你已经证明你没有_need_`c`使它工作). (2认同)