Как работает reduce js — Q&A Хекслет
2026-02-26 16:41 Diff

Ответы

Метод reduce() проходит по всем элементам массива, вызывает на каждом элементе колбэк-функцию, а результат вызова накапливает в переменной-аккумуляторе, которая и возвращается в итоге.

Чтобы стало понятнее, предлагаю посмотреть, как метод reduce() устроен внутри:

Метод reduce() применяет колбек функцию к каждому элементу массива (слева-направо) и возвращает одно результирующее значение. По мере движения по массиву меняется значение аккумулятора, первого аргумента колбека, а его исходное значение передаётся в метод вторым аргументом. Давайте посмотрим на пример:

Метод reduce() в JavaScript это мощный инструмент для обработки массивов. Он позволяет "свернуть" массив в одно значение, применяя заданную колбек функцию к каждому элементу.

Где:

  • callback - функция, выполняемая для каждого элемента массива
  • accumulator - накопитель, хранящий результат предыдущих вычислений
  • currentValue - текущий обрабатываемый элемент массива
  • index - индекс текущего элемента, опционально
  • array - исходный массив, опционально
  • initialValue - начальное значение аккумулятора, опционально

В этом примере reduce складывает все числа массива.

reduce() особенно полезен для вычисления итоговых значений, трансформации массивов в объекты и других сложных операций с данными. Иначе говоря, reduce() реализует агрегацию коллекций и других сложных структур.