Продолжая работу с платформой, вы принимаете условия Политики конфиденциальности и использование файлов cookie.
Async Reduce
Среднее
Реализуйте asyncReduce(array, asyncFn, initial) - reduce с async функцией.
Что такое reduce?
Метод массива, который "сворачивает" все элементы в одно значение, применяя функцию последовательно. Например: сумма всех чисел, конкатенация строк, объединение объектов.
Задача:
Обычный Array.reduce() не поддерживает async функции. Нужно создать версию, которая:
Принимает массив, async функцию и начальное значение
Применяет функцию последовательно к каждому элементу
Передаёт накопленный результат (accumulator) в следующую итерацию
Возвращает финальный результат
Пример:
const userIds = [1, 2, 3];
const totalKarma = await asyncReduce(
userIds,
async (sum, userId) => {
const user = await fetchUser(userId);
return sum + user.karma;
},
0 // начальное значение
);
// totalKarma = сумма кармы всех пользователей
JavaScript•UTF-8
Run your code to see results.
Click the Run button above
Mobile view - please use desktop for better experience