Привет.
Не могу понять поведения при чейнинге через 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. Почему такое поведение?