2

如何提取回调函数的参数(a,b)并将另一个参数(c)添加到函数调用?

function mycallback(a, b, c) {
  // do stuff with a, b, c
}

function perform(callback) {
  // I need to extract a and b here and add c:
  // ???
  //callback.apply(???);     
}

perform( function() { mycallback(1, 2) } );
4

1 回答 1

2

我能想到的唯一方法是将参数传递给perform自身,然后让它传递给回调:

function perform(callback) {
  var args = Array.prototype.slice.apply(arguments).splice(1);
  // use args... add c with args.push(c)...
  callback.apply(this, args);
}

perform(mycallback, 1, 2);
于 2011-09-12T15:42:19.163 回答