При программировании с помощью обещаний в jQuery мне иногда нужно начинать с решенного обещания, особенно при связывании .then()
в цикле, подобном этому, как показано в методе № 2 в этот ответ:
data.reduce(function(p, item) {
return p.then(function() {
return print(item);
});
}, $.Deferred().resolve().promise());
Итак, я знаю, что могу получить решенное обещание с помощью этого:
$.Deferred().resolve().promise()
Но это кажется уродливым и расточительным (три вызова функций). Есть ли лучший (меньше кода, меньше вызовов функций) способ получить обработанное обещание в jQuery или лучший способ написать мой цикл .reduce()
выше?