var array = [DefferdObj, DefferdObj, DefferdObj, DefferdObj];
array[0].then
array[1].then
array[2].then
・
・
・
我想异步执行Deferred Obj。 这个数组可以动态改变。
答案 0 :(得分:0)
如果您希望在完成后运行一段代码,那么:
$.when.apply(null, array).then(function() {
console.log("all deferreds in array are complete!");
});
如果您希望控制延迟运行的顺序,则必须确保延迟尚未开始。在将它们放入数组之前,我建议将它们包装在一个持续的延迟中。
var last = array[0];
function tackOnFunction(fn) {
array.push(last = last.then(fn));
}