Независимо от того, хотите ли вы удалить определенное значение, элемент по его индексу или повторяющиеся элементы, JavaScript предлагает несколько методов для удаления элементов из массива.
Удаление элемента по индексу
Если вам нужно удалить элемент из массива по индексу, вы можете использовать метод splice()
, передав в него два аргумента: индекс элемента, который нужно удалить, и количество элементов, которые нужно удалить начиная с этого индекса.
То есть, если вторым аргументом передать единицу, то удалиться только один элемент, индекс которого был указан в первом аргументе. А если указать, например тройку, то удалиться 3 элемента, начиная с указанного индекса.
Будьте внимательны при использовании данного метода, так как он изменяет исходный массив.
let indexToRemove = 2; // Индекс элемента, который нужно удалить
// Удаляем 1 элемент
let myArray1 = [1, 2, 3, 4, 5, 6];
myArray1.splice(indexToRemove, 1);
console.log(myArray1); // Вывод: [1, 2, 4, 5, 6]
// Удаляем 3 элемента
let myArray2 = [1, 2, 3, 4, 5, 6];
myArray2.splice(indexToRemove, 3);
console.log(myArray2); // Вывод: [1, 2, 6]
Удаление элемента по значению
Если вы знаете значение элемента, который нужно удалить, но не знаете его индекса, можно воспользоваться методом filter()
. Этот метод возвращает новый массив без изменения исходного.
Заметьте, что данный метод удаляет не один элемент, а все с идентичным значением.
let valueToRemove = 30; // Значение которые нужно удалить
let myArray = [10, 20, 30, 40, 50, 30];
myArray = myArray.filter(item => item !== valueToRemove);
console.log(myArray); // Вывод: [10, 20, 40, 50]
Удаления последнего элемента массива
Метод pop()
удаляет последний элемент массива и возвращает его. Этот метод изменяет исходный массив.
let arr = [1, 2, 3, 4];
let lastElement = arr.pop();
console.log(arr); // [1, 2, 3]
console.log(lastElement); // 4
Удаление первого элемента
Метод shift()
работает аналогично pop()
, но удаляет первый элемент массива, смещая все остальные элементы влево. Как и pop()
, этот метод изменяет исходный массив .
let arr = [1, 2, 3, 4];
let firstElement = arr.shift();
console.log(arr); // [2, 3, 4]
console.log(firstElement); // 1