如何将返回响应的预定义javascript回调传递给函数作为参数?

时间:2013-09-30 14:36:28

标签: javascript

我需要多次调用相同的回调函数,所以我不想重复它,但它需要响应,并且除非我明确定义它,否则这个响应在某种程度上不可用于调用函数。基本上这就是我所拥有的:

// The callback function
function foo(response){
  //do something with the response here
}

// The calling function
mainActivity(data, function(response){
  // Upon receiving the data in the form of 'response', do foo to it 
  foo(response); 
});

我最理想的是:

mainActivity(data, foo(response)}

但我似乎无法弄清楚如何。

1 个答案:

答案 0 :(得分:4)

简单。

mainActivity(data, foo);

如果您继续在foo()中致电mainActivity(),则不会。

推理:

mainActivity(data, foo(response))调用foo(response)并将其传递给mainActivity(data, callback)。如果foo(response)没有返回函数,那么当mainActivity尝试将其称为函数(在名义声明中为callback(response))时,它就不会非常成功。