假设我有一个异步函数返回一个承诺。我想链接很多这样的函数,每个函数都有不同的参数。
将执行此数组的函数如下所示:
function executePromiseQueueSync(queue){
var seed = $.Deferred(),
finalPromise;
_reduce(queue, function(memo, promise){
return memo.then(promise);
}, seed.promise());
seed.resolve();
return finalPromise;
}
我看到一些函数接受一系列承诺并同步执行它们。问题是我不知道如何创建这样的数组。例子:
var promiseQueue = [];
promiseQueue.push(AsynchEvent(someArg)); // WRONG: this is function call and will be executed immediately
其他:
var promiseQueue = [];
promiseQueue.push(AsynchEvent); // WRONG: at some point I will have to apply this with arguments
那么 - 有没有办法将返回承诺的函数放入数组而不执行它?