Javascript - определенный - Как удалить элемент из массива по значению? Как удалить определенный элемент массива JavaScript? Javascript удалить из массива по значению

сдвиг

Используйте.shift для удаления первого элемента массива.

Например:

Var array = ; array.shift();

массив приводит к:

Например:

Var array = ; array.pop();

массив приводит к:

Оба метода возвращают удаленный элемент;

сращивание

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

Например:

Var array = ; array.splice(1, 2);

оставляет array , содержащий:

Возврат array.splice() - это новый массив, содержащий удаленные элементы. В приведенном выше примере возврат будет следующим:

Таким образом, опускание второго параметра эффективно разбивает массив на два массива с исходным окончанием до указанного индекса:

Var array = ; array.splice(2);

Оставляет array содержащий и возвращает .

удалять

Используйте delete для удаления элемента из массива без изменения длины массива:

Var array = ; console.log(array.length); // 5 delete array; console.log(array); // console.log(array.length); // 5

Array.prototype.length

Присвоение значения length массива изменяет длину на заданное значение. Если новое значение меньше длины массива, элементы будут удалены с конца значения.

Array = ; array.length = 2; console.log(array); //



Как удалить элемент из массива по значению? (20)

// отредактировал спасибо MarcoCI за советы

попробуй это:

Function wantDelete(item, arr){ for (var i=0;i !(comment.Id === commentId));

Вот версия, в которой используется функция inArray jQuery:

Var index = $.inArray(item, array); if (index != -1) { array.splice(index, 1); }

Вы можете добиться этого, используя функцию Lodash _.remove .

var array = ["three", "seven", "eleven"]; var evens = _.remove(array, function(e) { return e !== "seven"; }); console.log(evens);

Const _ = require("lodash"); _.without(, 2); // ->

Действительно, я не понимаю, почему это невозможно решить с помощью

Arr = arr.filter(value => value !== "seven");

Или, может быть, вы хотите использовать vanilla JS

Arr = arr.filter(function(value) { return value !== "seven" });

Другой вариант:

If (!Array.prototype.removeArr) { Array.prototype.removeArr = function(arr) { if(!Array.isArray(arr)) arr=;//let"s be nice to people who put a non-array value here.. that could be me! var that = this; if(arr.length){ var i=0; while(i-1){ that.splice(i,1); }else i++; } } return that; } }

Это indexOf () внутри цикла снова, но в предположении, что массив для удаления является малым относительно массива, который нужно очистить; каждое удаление сокращает цикл while.

Это позволит вам сделать следующее:

Var ary = ["three", "seven", "eleven"]; var aryWithoutSeven = ary.filter(function(value) { return value != "seven" }); console.log(aryWithoutSeven); // returns ["three", "eleven"]

Это также было отмечено в этой теме где-то еще: https://.com/a/20827100/293492

Не используйте вариант с delete - он делает отверстие в массиве, так как он не переиндексирует элементы после удаленного элемента.

> Array.prototype.remove=function(v){ ... delete this ... }; > var myarray=["3","24","55","2"]; undefined > myarray.remove("55"); undefined > myarray [ "3", "24", "2" ]

Один лайнер сделает это,

Var ary = ["three", "seven", "eleven"]; // Remove item "seven" from array var filteredAry = ary.filter(function(e) { return e !== "seven" }) //=> ["three", "eleven"] // In ECMA6 (arrow function syntax): var filteredAry = ary.filter(e => e !== "seven")

Это использует функцию filter в JS. Он поддерживается в IE9 и выше.

filter () вызывает предоставленную функцию обратного вызова один раз для каждого элемента в массиве и создает новый массив из всех значений, для которых обратный вызов возвращает значение, которое приводит к истинному. callback вызывается только для индексов массива, которым присвоены значения; он не вызывается для индексов, которые были удалены или которые никогда не были присвоены значениям. Элементы массива, которые не проходят тест обратного вызова, просто пропускаются и не включаются в новый массив.

Таким образом, в основном, это то же самое, что и все остальные for (var key in ary) { ... } решений, за исключением того, что for in поддерживается как IE6.

В принципе, фильтр - это метод удобства, который выглядит намного лучше (и является цепным), в отличие от конструктора for in (AFAIK).

Проверьте это:

For(var i in array){ if(array[i]=="seven"){ array.splice(i,1); break; } }

и в функции:

Function removeItem(array, item){ for(var i in array){ if(array[i]==item){ array.splice(i,1); break; } } } removeItem(array, "seven");

Удаление всех совпадающих элементов из массива (а не только первый, как кажется, самый общий ответ здесь):

While ($.inArray(item, array) > -1) { array.splice($.inArray(item, array), 1); }

Я использовал jQuery для тяжелой работы, но вы поняли, хотите ли вы поехать на родной язык.

Хитрость заключается в том, чтобы пройти через массив от начала до начала, поэтому вы не испортите индексы при удалении элементов.

Var deleteMe = function(arr, me){ var i = arr.length; while(i--) if(arr[i] === me) arr.splice(i,1); } var arr = ["orange","red","black", "orange", "white" , "orange" ]; deleteMe(arr , "orange");

arr теперь ["красный", "черный", "белый"]

Function cleanArrayOfSpecificTerms(array,unwantedTermsArray) { $.each(unwantedTermsArray, function(index, value) { var index = array.indexOf(value); if (index > -1) { array.splice(index, 1); } }); return array; }

Чтобы использовать, выполните следующие действия:

Var notInclude = ["Not","No","First","Last","Prior","Next", "dogs","cats"]; var splitTerms = ["call", "log", "dogs", "cats", "topic", "change", "pricing"]; cleanArrayOfSpecificTerms(splitTerms,notInclude)

Я попытался использовать метод функции из jbaron выше, но обнаружил, что мне нужно сохранить исходный массив без изменений для использования позже и создать новый массив следующим образом:

Var newArray = referenceArray;

Function newArrRemoveItem(array, item, newArray){ for(var i = 0; i < array.length; i++) { if(array[i]!=item){ newArray.push(array[i]); } } }

Затем я использую его так:

Var vesselID = record.get("VesselID"); var otherVessels = new Array(); newArrRemoveItem(vesselArr,vesselID,otherVessels);

Теперь судноArr остается неповрежденным, и каждый раз, когда я выполняю приведенный выше код, массив otherVessels включает в себя все, кроме последнего элемента CAID.

indexOf - это вариант, но его реализация в основном ищет весь массив для значения, поэтому время выполнения растет с размером массива. (так что это в каждом браузере, я думаю, я только проверял Firefox).

У меня нет IE6 для проверки, но я бы назвал это безопасной ставкой, что вы можете проверить по крайней мере миллион элементов массива в секунду таким образом практически на любой клиентской машине. Если [размер массива] * [поисковые запросы в секунду] может вырасти больше миллиона, вы должны рассмотреть другую реализацию.

В основном вы можете использовать объект для создания индекса для вашего массива, например:

Var index={"three":0, "seven":1, "eleven":2};

Любая нормальная среда JavaScript создаст индекс поиска для таких объектов, чтобы вы могли быстро перевести ключ в значение, независимо от того, сколько свойств имеет объект.

Это всего лишь базовый метод, в зависимости от ваших потребностей вы можете объединить несколько объектов и / или массивов, чтобы сделать те же данные быстро доступными для поиска для разных свойств. Если вы укажете свои конкретные потребности, я могу предложить более конкретную структуру данных.

//This function allows remove even array from array var removeFromArr = function(arr, elem) { var i, len = arr.length, new_arr = , sort_fn = function (a, b) { return a - b; }; for (i = 0; i < len; i += 1) { if (typeof elem === "object" && typeof arr[i] === "object") { if (arr[i].toString() === elem.toString()) { continue; } else { if (arr[i].sort(sort_fn).toString() === elem.sort(sort_fn).toString()) { continue; } } } if (arr[i] !== elem) { new_arr.push(arr[i]); } } return new_arr; }

Пример использования

Var arr = , "abc", 1, "1", 1]; removeFromArr(arr, 1); //["2", , "abc", "1"] var arr = [ , 2, "a", , ]; removeFromArr(arr, ); //]

Let arr = ; console.log(arr); //result let index = arr.indexOf(30); if (index > -1) { arr.splice(index, 1); } console.log(arr); //result

Var index = array.indexOf("item"); if(index!=-1){ array.splice(index, 1); }

Я описал лишь часть методов для работы с массивами.

Здесь мы поговорим о добавлении, удалении элементов массива. О переворачивании и сортировке массива, а так же о нарезке, замене и комбинировании массивов.

Добавление элементов в массив.

Вы можете использовать свойство length для добавления новых элементов в массив:

Var myArray = ["Apple", "Microsoft", "Google", "Facebook"]; myArray = "Yahoo!"; console.log(myArray); // ["Apple", "Microsoft", "Google", "Facebook", "Yahoo!"]

Это сработает, т.к. элементы массива нумеруются с нуля, а length на единицу больше. Length всегда эквивалентно index + 1 , поэтому очень легко добавить новый элемент в конец массива. Странно, но вы можете добавить элемент на позицию, которая намного больше, чем длина самого массива:

Var myArray = ["Jimi Hendrix", "Eric Clapton", "Jimmy Page", "Keith Richards"]; myArray = "Lindsey Buckingham"; console.log(myArray); // ["Jimi Hendrix", "Eric Clapton", "Jimmy Page", "Keith Richards", undefined × 95, "Lindsey Buckingham"] console.log(myArray.length); // 100

Как показано в комментариях, будет добавлено 95 пустых слотов и элемент «Lindsey Buckingham» в конец массива. После этого мы получим длину 100. Еще один способ добавить новый элемент в массив — использовать метод push():

Var myArray = ["Paul McCartney", "John Lennon", "George Harrison"]; myArray.push("Ringo Starr", "George Martin"); console.log(myArray); // ["Paul McCartney", "John Lennon", "George Harrison", "Ringo Starr", "George Martin"]

Метод push() всегда возвращает новую длину массива (в нашем случае 5). Добавить элемент можно с помощью splice():

Var myArray = ["acorn", "beech", "mongongo", "macadamia"]; myArray.splice(2, 0, "cashew"); // adds "cashew" into index 2 console.log(myArray); // ["acorn", "beech", "cashew", "mongongo", "macadamia"]

Когда второй аргумент 0, то это означает, что ни один элемент не будет удален, а поэтому любые последующие аргументы будут добавлены в массив в позицию, указанную в первом аргументе.

Удаление элементов из массива

Удалить элемент немножко сложнее, чем его добавить. Чтобы удалить элемент из конца массива, можно использовать pop():

Var myArray = ["7-up", "Sprite", "Ginger Ale", "Lemonade"]; myArray.pop(); console.log(myArray); // ["7-up", "Sprite", "Ginger Ale"]

Метод pop() всегда удаляет последний элемент в массиве и возвращает его.

Вы так же можете использовать splice() метод:

Var myArray = ["cassava", "nutmeg", "lupin", "rhubarb"]; myArray.splice(2, 1); // удалить элемент с индексом 2 console.log(myArray); // ["cassava", "nutmeg", "rhubarb"]

В отличии от метода splice(), который используется для добавления элементов, здесь вторым аргументом идет 1, которая говорит, что мы хотим удалить элемент с индексом 2 (или 3-ий по счету). В данном случае удалился элемент «lupin».

Вы можете удалить элемент массива используя оператор delete:

Var myArray = ["Byte Bandit", "Eliza", "Jeefo", "Michelangelo"]; console.log(myArray.length); // 4 delete myArray; // удалить Eliza console.log(myArray.length); // 4 console.log(myArray); // ["Byte Bandit", undefined × 1, "Jeefo", "Michelangelo"]

Первое важное замечание: delete() не изменяет длину массива после удаления элемента (даже, если это был последний элемент в массиве). Второе: delete() изменяет значение удаляемого элемента на undefined, поэтому при обращении myArray = undefined .

Хороший способ удалить элемент из массива — использовать John Resig’s Array.remove . Ниже пример использования, взятый с его страницы:

// Array Remove - By John Resig (MIT Licensed) Array.prototype.remove = function(from, to) { var rest = this.slice((to || from) + 1 || this.length); this.length = from < 0 ? this.length + from: from; return this.push.apply(this, rest); }; // Удаление 2 элемента из массива array.remove(1); // Удаление 2-ого элемента с конца массива array.remove(-2); // Удаление второго и третьего элемента array.remove(1,2); // Удаление последнего и предпоследнего элемента array.remove(-2,-1);

Возможно вы захотите посмотреть решение by Viral Patel , одну из функций в Underscore.js , или jQuery’s grep() .

Дополнительно, в JavaScript есть метод shift(), который удаляет первый элемент в массиве и возвращает его значение. Посмотрим код:

Var myArray = ["Matt Kramer", "Jason Bieler", "Tom Defile", "Phil Varone"]; console.log(myArray.length); // 4 var firstItem = myArray.shift(); console.log(firstItem); // Matt Kramer console.log(myArray.length); // 3 console.log(myArray); // ["Jason Bieler", "Tom Defile", "Phil Varone"]

С помощью метода shift() мы удалили элемент, но сохранили его значение в нашей переменной firstItem. Длина массива изменилась с 4 на 3.

Этот метод может быть полезен вместе с методом push(). Используя их вместе мы можем эффективно выстраивать очередь элементов в массиве. Мы сохраняем длину массива удаляя элемент с начала и добавляя новый в конец.

Наоборот, мы можем использовать метод unshift() для добавления элемент в начало массива:

Var myArray = ["apito", "castanets", "maraca"]; console.log(myArray.length); // 3 myArray.unshift("chime bar", "tan-tan"); console.log(myArray.length); // 5 console.log(myArray); // ["chime bar", "tan-tan", "apito", "castanets", "maraca"]

Используя метод unshift() с методом pop(), вы можете создавать очереди в обратную сторону, добавляя элементы в начало и удаляя с конца массива.

Переворачивание и сортировка элементов массива.

Чтобы перевернуть элементы в массиве, мы можем использовать reverse():

Var myArray = ["countdown", "final", "the"]; console.log(myArray); // ["countdown", "final", "the"] myArray = myArray.reverse(); console.log(myArray); // ["the", "final", "countdown"]

Сортировать элементы массива в алфавитном порядке возможно с помощью метода sort():

Var myArray = ["xylophones", "zebras", "juggernauts", "avocados"]; console.log(myArray); // ["xylophones", "zebras", "juggernauts", "avocados"] myArray = myArray.sort(); console.log(myArray); // ["avocados", "juggernauts", "xylophones", "zebras"]

Но это не будет работать с числами.

Var myArray = ; console.log(myArray); // myArray = myArray.sort(); console.log(myArray); //

Если нужно отсортировать числа, то можно использовать следующий код:

Function compareNumbers(a, b) { return a - b; } var myArray = ; console.log(myArray); // myArray = myArray.sort(compareNumbers); console.log(myArray); //

Как показано выше, с помощью простой функции, вставленной в sort(), массив, содержащий числа, будет отсортирован правильно.

Объединение массивов.

Мы можете объединить 2 или больше массивов и получить 1 массив, который содержит элементы соединенных массивов. Для этого используем метод concat():

Var myArray = ["Jay Ferguson", "Andrew Scott"]; var myArray2 = ["Chris Murphy", "Patrick Pentland"]; var myNewArray = myArray.concat(myArray2); console.log(myNewArray); // ["Jay Ferguson", "Andrew Scott", "Chris Murphy", "Patrick Pentland"]

Var myArray = ["Jay Ferguson", "Andrew Scott"]; var myNewArray = myArray.concat("Chris Murphy", "Patrick Pentland"); console.log(myNewArray); // ["Jay Ferguson", "Andrew Scott", "Chris Murphy", "Patrick Pentland"]

Разделение массива.

Мы можете создать новый массив, содержащий 1 или более элементов из существующего массива, используя функцию slice():

Var myArray = ["Vocals", "Bass", "Guitar", "Drums", "Apples", "Oranges"]; var myNewArray = myArray.slice(4); console.log(myNewArray); // ["Apples", "Oranges"]

Метод slice() принимает 1 или 2 аргумента. Если передан 1 аргумент (индекс), то новый массив создается из всех элементов старого, начиная с данного индекса. Если передано 2 аргумента, то новый массив создается из элементов, начиная с первого аргумента и до элемента с индексом, переданным во втором параметре, не включая последний. Чтобы было понятней, посмотрим код ниже:

Var myArray = ["Vocals", "Bass", "Guitar", "Drums", "Apples", "Oranges"]; var myNewArray = myArray.slice(0, 4); console.log(myNewArray); // ["Vocals", "Bass", "Guitar", "Drums"]

Замена элементов в массиве.

Мы используем splice() для удаления элементов из массива, но мы так же можем заменить элемент в массиве на новые элементы:

Var myArray = ["Rivers Cuomo", "Patrick Wilson", "Brian Bell", "Matt Sharp"]; myArray.splice(3, 1, "Scott Shriner"); // заменить 1 элемент с индексом 3 console.log(myArray); // ["Rivers Cuomo", "Patrick Wilson", "Brian Bell", "Scott Shriner"]

Метод splice() всегда возвращает массив, содержащий элементы, которые были удалены. В строчке 2 будет возвращен 1 элемент «Brian Bell».

Заключение

В данных статьях были описаны методы работы с массивами в JavaScript. Некоторые дополнительные элементы можно посмотреть на MDN , которые я не включил в данный пост. Они работают только в IE9+, поэтому могут оказаться бесполезными.

Есть что добавить? Или знаете какую-нибудь интересную библиотеку, которая поможет управлять массивами? Комментируйте, пожалуйста!



удалить определенный элемент массива js (20)

Есть ли способ удалить элемент из массива JavaScript?

Учитывая массив:

Var ary = ["three", "seven", "eleven"];

Я хотел бы сделать что-то вроде:

RemoveItem("seven", ary);

Я просмотрел splice() но это только удаляет номер позиции, тогда как мне нужно что-то, чтобы удалить элемент по его значению.

// отредактировал спасибо MarcoCI за советы

попробуй это:

Function wantDelete(item, arr){ for (var i=0;i !(comment.Id === commentId));

Вот версия, в которой используется функция inArray jQuery:

Var index = $.inArray(item, array); if (index != -1) { array.splice(index, 1); }

Вы можете добиться этого, используя функцию Lodash _.remove .

var array = ["three", "seven", "eleven"]; var evens = _.remove(array, function(e) { return e !== "seven"; }); console.log(evens);

Const _ = require("lodash"); _.without(, 2); // ->

Действительно, я не понимаю, почему это невозможно решить с помощью

Arr = arr.filter(value => value !== "seven");

Или, может быть, вы хотите использовать vanilla JS

Arr = arr.filter(function(value) { return value !== "seven" });

Другой вариант:

If (!Array.prototype.removeArr) { Array.prototype.removeArr = function(arr) { if(!Array.isArray(arr)) arr=;//let"s be nice to people who put a non-array value here.. that could be me! var that = this; if(arr.length){ var i=0; while(i-1){ that.splice(i,1); }else i++; } } return that; } }

Это indexOf () внутри цикла снова, но в предположении, что массив для удаления является малым относительно массива, который нужно очистить; каждое удаление сокращает цикл while.

Это позволит вам сделать следующее:

Var ary = ["three", "seven", "eleven"]; var aryWithoutSeven = ary.filter(function(value) { return value != "seven" }); console.log(aryWithoutSeven); // returns ["three", "eleven"]

Это также было отмечено в этой теме где-то еще: https://.com/a/20827100/293492

Не используйте вариант с delete - он делает отверстие в массиве, так как он не переиндексирует элементы после удаленного элемента.

> Array.prototype.remove=function(v){ ... delete this ... }; > var myarray=["3","24","55","2"]; undefined > myarray.remove("55"); undefined > myarray [ "3", "24", "2" ]

Один лайнер сделает это,

Var ary = ["three", "seven", "eleven"]; // Remove item "seven" from array var filteredAry = ary.filter(function(e) { return e !== "seven" }) //=> ["three", "eleven"] // In ECMA6 (arrow function syntax): var filteredAry = ary.filter(e => e !== "seven")

Это использует функцию filter в JS. Он поддерживается в IE9 и выше.

filter () вызывает предоставленную функцию обратного вызова один раз для каждого элемента в массиве и создает новый массив из всех значений, для которых обратный вызов возвращает значение, которое приводит к истинному. callback вызывается только для индексов массива, которым присвоены значения; он не вызывается для индексов, которые были удалены или которые никогда не были присвоены значениям. Элементы массива, которые не проходят тест обратного вызова, просто пропускаются и не включаются в новый массив.

Таким образом, в основном, это то же самое, что и все остальные for (var key in ary) { ... } решений, за исключением того, что for in поддерживается как IE6.

В принципе, фильтр - это метод удобства, который выглядит намного лучше (и является цепным), в отличие от конструктора for in (AFAIK).

Проверьте это:

For(var i in array){ if(array[i]=="seven"){ array.splice(i,1); break; } }

и в функции:

Function removeItem(array, item){ for(var i in array){ if(array[i]==item){ array.splice(i,1); break; } } } removeItem(array, "seven");

Удаление всех совпадающих элементов из массива (а не только первый, как кажется, самый общий ответ здесь):

While ($.inArray(item, array) > -1) { array.splice($.inArray(item, array), 1); }

Я использовал jQuery для тяжелой работы, но вы поняли, хотите ли вы поехать на родной язык.

Хитрость заключается в том, чтобы пройти через массив от начала до начала, поэтому вы не испортите индексы при удалении элементов.

Var deleteMe = function(arr, me){ var i = arr.length; while(i--) if(arr[i] === me) arr.splice(i,1); } var arr = ["orange","red","black", "orange", "white" , "orange" ]; deleteMe(arr , "orange");

arr теперь ["красный", "черный", "белый"]

Function cleanArrayOfSpecificTerms(array,unwantedTermsArray) { $.each(unwantedTermsArray, function(index, value) { var index = array.indexOf(value); if (index > -1) { array.splice(index, 1); } }); return array; }

Чтобы использовать, выполните следующие действия:

Var notInclude = ["Not","No","First","Last","Prior","Next", "dogs","cats"]; var splitTerms = ["call", "log", "dogs", "cats", "topic", "change", "pricing"]; cleanArrayOfSpecificTerms(splitTerms,notInclude)

Я попытался использовать метод функции из jbaron выше, но обнаружил, что мне нужно сохранить исходный массив без изменений для использования позже и создать новый массив следующим образом:

Var newArray = referenceArray;

Function newArrRemoveItem(array, item, newArray){ for(var i = 0; i < array.length; i++) { if(array[i]!=item){ newArray.push(array[i]); } } }

Затем я использую его так:

Var vesselID = record.get("VesselID"); var otherVessels = new Array(); newArrRemoveItem(vesselArr,vesselID,otherVessels);

Теперь судноArr остается неповрежденным, и каждый раз, когда я выполняю приведенный выше код, массив otherVessels включает в себя все, кроме последнего элемента CAID.

indexOf - это вариант, но его реализация в основном ищет весь массив для значения, поэтому время выполнения растет с размером массива. (так что это в каждом браузере, я думаю, я только проверял Firefox).

У меня нет IE6 для проверки, но я бы назвал это безопасной ставкой, что вы можете проверить по крайней мере миллион элементов массива в секунду таким образом практически на любой клиентской машине. Если [размер массива] * [поисковые запросы в секунду] может вырасти больше миллиона, вы должны рассмотреть другую реализацию.

В основном вы можете использовать объект для создания индекса для вашего массива, например:

Var index={"three":0, "seven":1, "eleven":2};

Любая нормальная среда JavaScript создаст индекс поиска для таких объектов, чтобы вы могли быстро перевести ключ в значение, независимо от того, сколько свойств имеет объект.

Это всего лишь базовый метод, в зависимости от ваших потребностей вы можете объединить несколько объектов и / или массивов, чтобы сделать те же данные быстро доступными для поиска для разных свойств. Если вы укажете свои конкретные потребности, я могу предложить более конкретную структуру данных.

//This function allows remove even array from array var removeFromArr = function(arr, elem) { var i, len = arr.length, new_arr = , sort_fn = function (a, b) { return a - b; }; for (i = 0; i < len; i += 1) { if (typeof elem === "object" && typeof arr[i] === "object") { if (arr[i].toString() === elem.toString()) { continue; } else { if (arr[i].sort(sort_fn).toString() === elem.sort(sort_fn).toString()) { continue; } } } if (arr[i] !== elem) { new_arr.push(arr[i]); } } return new_arr; }

Пример использования

Var arr = , "abc", 1, "1", 1]; removeFromArr(arr, 1); //["2", , "abc", "1"] var arr = [ , 2, "a", , ]; removeFromArr(arr, ); //]

Let arr = ; console.log(arr); //result let index = arr.indexOf(30); if (index > -1) { arr.splice(index, 1); } console.log(arr); //result

Var index = array.indexOf("item"); if(index!=-1){ array.splice(index, 1); }

ПК