Sobes.tech
Back to questions
Middle
3

Какова сигнатура метода reduce у массивов? Что нужно возвращать из callback на каждой итерации?

Companies where asked
ОТП БанкОТП Банк

Answer from AI

sobes.tech AI

Метод reduce у массивов в JavaScript имеет следующую сигнатуру:

arr.reduce(callback[, initialValue])

Где callback — функция с параметрами:

function callback(accumulator, currentValue, currentIndex, array) {
  // ...
  return newAccumulator;
}
  • accumulator — аккумулирующее значение, которое возвращается из предыдущего вызова callback (или initialValue при первой итерации).
  • currentValue — текущий обрабатываемый элемент массива.
  • currentIndex — индекс текущего элемента.
  • array — исходный массив.

На каждой итерации из callback нужно возвращать новое значение аккумулятора, которое будет передано в следующую итерацию. В итоге reduce возвращает итоговое аккумулированное значение.

Пример:

const sum = [1, 2, 3, 4].reduce((acc, val) => acc + val, 0);
console.log(sum); // 10