Как добавить указанную задержку к разрешению обещания?
Я хотел бы определить функцию, которая принимает обещание и возвращает идентичное обещание, за исключением того, что возвращенные обещания разрешают произвольное время ожидания; мой код выглядит примерно так: но я'я не уверен, что яЯ ловлю все, как отказ.
//Returns a promise identical to promise, except with an additional delay
// specified by timeout.
delayedPromise(promise, timeout) {
var newPromise = $.Deferred();
promise.then(function(result) {
window.setTimeout(function() {
newPromise.resolve(result);
}, 3000);
}
return newPromise;
}
Есть лучший способ сделать это? Мне также нужно добавить аналогичную функцию для обработки ошибок?