Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

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

Чем splice отличается от slice? Какой из них мутирует массив?

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

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

splice изменяет (мутирует) исходный массив, удаляя, заменяя или добавляя элементы. slice возвращает новый массив, не изменяя исходный. splice принимает индекс начала, количество удаляемых элементов и элементы для добавления. slice принимает начальный и конечный индексы (не включая конец).

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

Основное различие

Методы splice и slice используются для работы с массивами, но принципиально отличаются по воздействию на исходные данные. splice мутирует (изменяет) исходный массив, а slice возвращает новый массив, оставляя оригинал нетронутым.

Метод splice

splice предназначен для удаления, замены или добавления элементов в массив. Он изменяет массив на месте и возвращает массив удалённых элементов. Синтаксис: array.splice(start, deleteCount, item1, item2, ...).

let arr = [1, 2, 3, 4, 5];
let removed = arr.splice(1, 2, 'a', 'b');
console.log(arr);      // [1, 'a', 'b', 4, 5]
console.log(removed);  // [2, 3]

Метод slice

slice создаёт новый массив, содержащий копию части исходного массива от начального индекса до конечного (не включая его). Исходный массив не изменяется. Синтаксис: array.slice(start, end).

let arr = [1, 2, 3, 4, 5];
let newArr = arr.slice(1, 3);
console.log(arr);     // [1, 2, 3, 4, 5]
console.log(newArr);  // [2, 3]

Когда что использовать

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

Вывод: splice мутирует массив и подходит для операций изменения, slice иммутабелен и безопасен для копирования частей массива.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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

Уровень

  • Рейтинг:

    5

  • Сложность:

    2

Навыки

  • JavaScript

    JavaScript

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

#splice

#slice

#array mutation

#immutable

#JavaScript

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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