Массив:
var arr = {'abc','def','ghi'};
Я хочу удалить выше значение массива 'def', используя индекс.
Массив:
var arr = {'abc','def','ghi'};
Я хочу удалить выше значение массива 'def', используя индекс.
Используйте метод сращивания.
ArrayName.splice(indexValueOfArray,1);
Это удаляет элемент 1
из массива, начиная с indexValueOfArray
.
Ваш примерный код неверен и будет вызывать SyntaxError. Кажется, вы смутили синтаксис создания объекта Object
с созданием Array
.
Правильный синтаксис: var arr = [ "abc", "def", "ghi" ];
Чтобы удалить элемент из массива на основе его значения, используйте метод splice:
arr.splice(arr.indexOf("def"), 1);
Чтобы удалить его по индексу, просто обратитесь непосредственно к нему:
arr.splice(1, 1);
Ваш синтаксис неверен, вы должны либо указать хеш:
hash = {abc: true, def: true, ghi: true};
Или массив:
arr = ['abc','def','ghi'];
Вы можете эффективно удалить элемент из хэша, просто установив его в null:
hash['def'] = null;
hash.def = null;
Или полностью удалите его:
delete hash.def;
Чтобы удалить элемент из массива, вы должны перебирать каждый элемент и находить тот, который вы хотите (могут быть дубликаты). Вы можете использовать методы поиска и сплайсинга массива:
arr.splice(arr.indexOf("def"), 1);
Это находит первый индекс "def", а затем удаляет его из массива с помощью сплайсинга. Однако я бы рекомендовал .filter(), потому что он дает вам больше контроля:
arr.filter(function(item) { return item !== 'def'; });
Это создаст новый массив с только элементами, которые не являются "def".
Важно отметить, что arr.filter() вернет новый массив, а arr.splice изменит исходный массив и вернет удаленные элементы. Они могут быть полезны, в зависимости от того, что вы хотите делать с элементами.
delete arr[1]
Попробуйте это, он должен работать, если у вас есть массив вроде var arr =["","",""]
var array = new Array();
array.push('123');
array.push('456');
array.push('789');
var _searchedIndex = $.inArray('456',array);
alert(_searchedIndex );
if(_searchedIndex >= 0){
array.splice(_searchedIndex,1);
alert(array );
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>