Есть несколько способов удалить элемент из массива. Позвольте мне указать наиболее часто используемые варианты ниже. Я пишу этот ответ, потому что я не смог найти правильную причину того, что использовать из всех этих опций. Ответ на вопрос - вариант 3 ( Splice () ).
1) SHIFT () - удалить первый элемент из исходного массива и вернуть первый элемент
См. Ссылку для Array.prototype.shift () . Используйте это, только если вы хотите удалить первый элемент, и только если вы в порядке с изменением исходного массива.
const array1 = [1, 2, 3];
const firstElement = array1.shift();
console.log(array1);
// expected output: Array [2, 3]
console.log(firstElement);
// expected output: 1
2) SLICE () - возвращает копию массива, разделенного начальным индексом и конечным индексом
Смотрите ссылку на Array.prototype.slice () . Вы не можете удалить определенный элемент из этой опции. Вы можете взять только часть существующего массива и получить непрерывную часть массива. Это как вырезать массив из указанных вами индексов. Исходный массив не затрагивается.
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(2));
// expected output: Array ["camel", "duck", "elephant"]
console.log(animals.slice(2, 4));
// expected output: Array ["camel", "duck"]
console.log(animals.slice(1, 5));
// expected output: Array ["bison", "camel", "duck", "elephant"]
3) SPLICE () - изменить содержимое массива, удалив или заменив элементы по определенным индексам.
См. Ссылку на Array.prototype.splice () . Метод splice () изменяет содержимое массива, удаляя или заменяя существующие элементы и / или добавляя новые элементы на месте. Возвращает обновленный массив. Исходный массив обновляется.
const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb');
// inserts at index 1
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April", "June"]
months.splice(4, 1, 'May');
// replaces 1 element at index 4
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April", "May"]
slice(start, end)не 'how_many_to_remove'