Middle+
28
¿Qué es una mutación y cuáles son los métodos mutantes de arrays en JavaScript? Proporcione ejemplos de métodos que mutan y no mutan.
Empresas donde se preguntó
ООО Делай мебель
Respuesta de la IA
sobes.tech AI
Мутация в JavaScript — это изменение исходного массива или объекта. Мутирующие методы массивов изменяют сам массив, а немутирующие — возвращают новый массив, оставляя исходный без изменений.
Примеры мутирующих методов:
push()— добавляет элемент в конец массиваpop()— удаляет последний элементshift()— удаляет первый элементunshift()— добавляет элемент в началоsplice()— добавляет/удаляет элементы по индексу
let arr = [1, 2, 3];
arr.push(4); // arr теперь [1, 2, 3, 4]
arr.splice(1, 1); // удаляет элемент с индексом 1, arr теперь [1, 3, 4]
Примеры немутирующих методов:
map()— возвращает новый массив, преобразованный функциейfilter()— возвращает новый массив с элементами, прошедшими проверкуslice()— возвращает копию части массиваconcat()— объединяет массивы, возвращая новый
let arr = [1, 2, 3];
let newArr = arr.map(x => x * 2); // newArr [2, 4, 6], arr не изменился
let filtered = arr.filter(x => x > 1); // filtered [2, 3]
Понимание разницы важно для управления состоянием и предотвращения неожиданных побочных эффектов в коде.