1. Очистите массив
var ary = [1,2,3,4]; ary.splice (0, ary.length); // очистить консоль массива.log (ary); // вывод [], опустошить массив, то есть он очищается
2. Удалить элементы массива
var ary = [1,2,3,4]; ary.splice (0,1); или ary.splice ($. inarray (2, ary), 1); где $ .inarray (2, ary) используется для поиска индексного положения элемента в массиве.
Три, несколько способов удаления массивов в JS
var arr = ['a', 'b', 'c'];
Чтобы удалить 'b', есть два способа:
1. Удалить метод: удалить ARR [1]
Таким образом, длина массива остается неизменной. В настоящее время ARR [1] становится неопределенным, но он также имеет то преимущество, что индекс массива остается неизменным. В настоящее время вам нужно пройти через элементы массива, чтобы использовать
for (index in arr) {document.write ('arr ['+index+'] ='+arr [index]);}Этот метод обхода пропускает в нем неопределенные элементы
* Этот метод будет поддержан в будущем.
2. Метод сплайсинга объекта массива: arr.splice (1,1);
Таким образом, длина массива изменяется соответственно, но исходный индекс массива также меняется соответственно
Первый 1 в параметре сплайсинга является начальным индексом удаления (рассчитывается из 0), который является вторым элементом массива.
Второй 1 - это количество удаленных элементов, и здесь удаляется только один элемент, то есть «B»;
В настоящее время можно нормально пересекать элементы массива, например, из -за удаленных элементов
Не сохранился в массиве
* Этот метод будет поддерживаться только после IE5.5
Стоит отметить, что при удалении элементов массива метод сплайсинга также может добавлять элементы массива.
Например, arr.splice (1,1, 'd', 'e'), D и E добавляются в ARR ARR
Массив результатов становится Arr: 'a', 'd', 'e', 'c'
Кроме того, JavaScript усекает массивы, устанавливая свойство длины массива, что является единственным способом сократить длину массива.
Если вы используете оператор Delete для удаления элемента в массиве, хотя этот элемент становится неопределенным, атрибут длины массива не изменяет два метода для удаления элементов, а длина массива также изменяется.
/ * * Метод: Array.remove (dx) * Функция: удалить элементы массива. * Параметры: DX Удалить подписки элементов. * Возврат: изменить массивы на исходном массиве* /// Часто использование - это реконструкция массивов через Traversal.array.prototype.remove = function (dx) {if (isnan (dx) || dx> this.length) {return false;} for (var (var i = 0, n = 0; i <this.length; i ++) {if (this [i]! = this [dx]) {this [n ++] = this [i]}} this.length- = 1} a = ['1', '2', '3', '4', '5']; Alert ("Elements:"+a+"nlength:"+a.length); a.remove (0); // Удалить элемент с помощью подписка 0 Alert («Элементы:»+a+"nlength:"+a.length);Пример 2,
/ * * Метод: Array.BaoreMove (dx) * Функция: удалить элементы массива. * Параметры: DX Удалить подписки элементов. * Возврат: изменить массив на исходном массиве. */ // Вы также можете использовать сплайс для реализации. Array.prototype.baoremove = function (dx) {// www.vevb.comif (isnan (dx) || dx> this.length) {return false;} this.splice (dx, 1); } b = ['1', '2', '3', '4', '5']; Alert ("Elements:"+b+"nlength:"+b.length); B.BaoreMove (1); // Удалить элемент с помощью подсказок 1 Alert ("Elements:"+b+"nlength:"+b.length);В IE5 или ниже, объект массива JavaScript не предоставляет готовый способ удаления элементов массива. В версии IE5.5+, хотя существует метод сплайсинга, он не удаляет определенный элемент (или несколько элементов), а только очищает значение определенного элемента (или нескольких элементов), что означает, что элемент все еще существует и длина массива не изменилась.
На самом деле, вы можете добавить метод удаления самостоятельно (обратите внимание, что это относится к удалению элемента массива от участника массива). Возможно, вы подумаете об использовании петель для переназначения значений в массив. Это, безусловно, нормально, но это очень неэффективно.
Следующее вводит метод настройки делеции массивов с использованием двух методов среза объекта массива и CONCAT.
Array.prototype.del = function (n) {// n представляет, какой термин, начиная с 0. // Прототип является прототипом объекта, обратите внимание на метод добавления пользовательских методов в объект здесь. if (n <0) // Если n <0, ничего не сделано. вернуть это; elsereturn this.slice (0, n) .concat (this.slice (n+1, this.length));/* Метод concat: возвращает новый массив, который состоит из двух или более массивов. Вот новый массив, состоящий из этого. Slice (0, N)/This.slice (n+1, this.length). В середине n -й предмет отсутствует. Метод срезов: возвращает сегмент массива с двумя параметрами, указывая начальные и окончательные позиции соответственно. */} // метод добавления его самостоятельно VAR Test = новый массив (0,1,2,3,4,5); test = test.del (3); // Из 0, удалить 4 -й пункт. предупреждение (тест);Приведенный выше код гибко использует только два метода объекта массива, что реализует основные требования, которые являются хорошими.
Вышеупомянутый простой метод удаления элементов массива и массивов очистки (необходимо прочитать) в JS - это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.