Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: reduce, callback, accumulator, return value, array method

Что должен возвращать callback внутри reduce?

Проверяет понимание обязательного возврата значения из callback-функции метода reduce и его влияния на аккумулятор.

Короткий ответ

Callback внутри reduce должен возвращать новое значение аккумулятора. Это значение передаётся в следующий вызов callback или становится итоговым результатом. Если ничего не вернуть, аккумулятор станет undefined, что приведёт к ошибкам. Возвращаемое значение определяет, как массив преобразуется в одно значение.

Длинный ответ

Что должен возвращать callback внутри reduce?

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

Как это работает?

Reduce принимает два аргумента: callback и начальное значение аккумулятора. Callback получает четыре параметра: аккумулятор, текущий элемент, индекс и исходный массив. Возвращаемое значение callback становится новым аккумулятором для следующей итерации. После обработки всех элементов возвращается финальное значение аккумулятора.

Пример кода

const numbers = [1, 2, 3, 4];

// Правильно: возвращаем сумму
const sum = numbers.reduce((acc, curr) => {
  return acc + curr;
}, 0);
console.log(sum); // 10

// Ошибка: ничего не возвращаем
const broken = numbers.reduce((acc, curr) => {
  acc + curr; // нет return
}, 0);
console.log(broken); // undefined

Где применяется?

Reduce используется для свёртки массива в одно значение: сумма, произведение, объект, строка и т.д. Также часто применяется для группировки данных или преобразования массива в объект.

Вывод

Всегда возвращайте новое значение аккумулятора из callback reduce, иначе результат будет undefined. Это основа корректной работы метода.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    4

  • Сложность:

    3

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#reduce

#callback

#accumulator

#return value

#array method

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию