Чейнинг promise через array.reduce
Привет.
Не могу понять поведения при чейнинге через reduce. Картина такая
function f(number, x) {
return new Promise(resolve => {
setTimeout(() => {
console.log(number);
resolve(number);
}, x)
});
}
const answer = [f(1, 1000), f(2, 3000), f(3, 2000)]
.reduce((previousValue, currentValue) => previousValue.then(currentValue));
answer.then(() => console.log('last'));
По моей логике, reduce должен был вернуть promise который я мог бы дальше чейнить, но на итоге, 1 чейн прицепленный к результату reduce вызываеться одновременно с 1 promise. Почему такое поведение?:help: |
Spirtikys,
а вместо картинки, разместить код никак? |
Цитата:
Но с проблемой разобрался, возможно перегрелся. Я передавал в чейнинг promise, в то время как then принимает function, итог -> это все проваливалось и попросту отрабатывало по таймингу :) |
| Часовой пояс GMT +3, время: 09:46. |