Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: array, mutation

Какие методы массивов мутируют исходный массив?

Вопрос проверяет знание того, какие операции с массивами изменяют исходные данные и могут приводить к побочным эффектам.

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

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

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

При работе с массивами в JavaScript важно понимать, какие методы изменяют исходный массив.

Определение

Мутирующий метод массива — это метод, который изменяет содержимое исходного массива, а не создаёт новый.

Основные мутирующие методы

К наиболее часто используемым относятся:

  • push

  • pop

  • shift

  • unshift

  • splice

  • sort

  • reverse

const arr = [1, 2, 3];
arr.push(4);
// arr теперь [1, 2, 3, 4]

Почему это может быть проблемой

Мутации опасны, потому что:

  • исходные данные меняются неявно

  • сложнее отслеживать изменения

  • могут ломаться оптимизации и сравнения по ссылке

Немутирующие альтернативы

Вместо мутаций часто используют:

  • concat

  • slice

  • map

  • filter

  • toSorted (в современных версиях)

const newArr = arr.concat(4);

Практический вывод

В бизнес-логике и UI-коде предпочтительнее немутирующие методы, чтобы код был предсказуемым и безопасным.

Краткий вывод

Мутирующие методы меняют массив напрямую. Их нужно использовать осознанно и аккуратно.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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

Уровень

  • Рейтинг:

    5

  • Сложность:

    5

Навыки

  • JavaScript

    JavaScript

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

#array

#mutation

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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