> Для чего нужны и как работают методы массивов map, filter и reduce в JavaScript (JavaScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: The Tribe, Софт Медиа Групп, Яндекс

Стек: JavaScript

> Пример ответа

Методы map, filter и reduce - это основные инструменты функционального программирования в JavaScript для работы с массивами без мутации исходных данных.

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

filter - возвращает новый массив, содержащий только те элементы, для которых колбэк вернул true. Применяется для отбора элементов по условию (например, все пользователи старше 18 лет).

reduce - более универсальный метод: «свёртывает» массив в одно значение (число, объект, строку и т.д.) с помощью аккумулятора. Колбэк получает аккумулятор и текущий элемент, а результат возвращается как новый аккумулятор. Часто используется для суммирования, группировки или построения сложных структур.

Примеры:

JAVASCRIPT
const numbers = [1, 2, 3, 4, 5];
// map: увеличить каждый элемент вдвое
const doubled = numbers.map(n => n * 2); // [2, 4, 6, 8, 10]
// filter: оставить только чётные
const evens = numbers.filter(n => n % 2 === 0); // [2, 4]
// reduce: найти сумму всех элементов
const sum = numbers.reduce((acc, n) => acc + n, 0); // 15

Все три метода не изменяют исходный массив, а возвращают новый (кроме reduce, который возвращает произвольное значение). Они поддерживают цепочки вызовов, что позволяет писать лаконичный и читаемый код.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью