Добавление и удаление элементов массива JS сбивалось с толку. Сегодня я наконец нашел подробное описание. Я дам мне код, чтобы проверить его сначала^-^
Кода -копия выглядит следующим образом:
var arr = new Array ();
arr [0] = "aaa";
arr [1] = "bbb";
arr [2] = "ccc";
//Alert(Arr.length) ;//3
arr.pop ();
//Alert(Arr.Length) ;//2
//Alert(Arr=R.Length-1^);//bbb
arr.pop ();
//Alert(Arr=RAR.Length-1^);/AAA
//Alert(Arr.length) ;//1
var arr2 = new Array ();
//Alert(Arr2.length) ;//0
arr2 [0] = "aaa";
arr2 [1] = "bbb";
//Alert(Arr2.length) ;//2
arr2.pop ();
//Alert(Arr2.length) ;//1
arr2 = arr2.slice (0, arr2.length-1);
//Alert(Arr2.length) ;//0
arr2 [0] = "aaa";
arr2 [1] = "bbb";
arr2 [2] = "ccc";
arr2 = arr2.slice (0,1);
оповещение (ARR2.Length); // 1
оповещение (arr2 [0]); // aaa
оповещение (arr2 [1]); // не определен
Сдвиг: удалить первый элемент исходного массива и вернуть значение удаленного элемента; Если массив пуст, верните неопределенную
var a = [1,2,3,4,5];
var b = a.shift (); // A: [2,3,4,5] B: 1
Unshift: добавьте параметр в начало исходного массива и верните длину массива
var a = [1,2,3,4,5];
var b = a.unshift (-2, -1); // A: [-2, -1,1,2,3,4,5] B: 7
ПРИМЕЧАНИЕ. Тестовое возвращаемое значение в IE6.0 всегда не определена, а возвратное значение теста в FF2.0 составляет 7, поэтому возвратное значение этого метода ненадежно. Когда вам нужно использовать возвратное значение, вы можете использовать сплайс вместо этого метода.
POP: Удалить последний элемент исходного массива и вернуть значение удаленного элемента; Если массив пуст, верните неопределенную
var a = [1,2,3,4,5];
var b = a.pop (); // a: [1,2,3,4] b: 5 // Если вам не нужно возвращать, просто позвоните напрямую напрямую
Нажмите: добавьте параметр к концу исходного массива и верните длину массива
var a = [1,2,3,4,5];
var b = a.push (6,7); // A: [1,2,3,4,5,6,7] B: 7
Concat: возвращает новый массив, который состоит из добавления параметров в исходный массив.
var a = [1,2,3,4,5];
var b = a.concat (6,7); // a: [1,2,3,4,5] B: [1,2,3,4,5,6,7]]
Splice (Start, DeleteCount, Val1, Val2, ...): DeleteCount Item из начальной позиции и вставьте Val1, val2, ...
При очистке массива просто передайте Startindex.
Если все элементы не удалены, передайте параметр deleteCount.
Сплайс также сначала имеет функцию удаления, а затем сначала добавляет, то есть удалить несколько элементов, а затем добавить несколько элементов в удаленную позицию. Количество удаленных и добавленных элементов не должно быть равным. В настоящее время также используется DeleteCount.
var a = [1,2,3,4,5];
var b = a.splice (2,2,7,8,9); // A: [1,2,7,8,9,5] B: [3,4]
var b = a.splice (0,1); // тот же сдвиг
A.Splice (0,0, -2, -1); var b = a.length; // такая же непрерывная
var b = a.splice (a.length-1,1); // Тот же поп
A.Splice (A.Length, 0,6,7); var b = a.length; // тот же толчок
Обратный: обратный массив
var a = [1,2,3,4,5];
var b = A.Reverse (); // A: [5,4,3,2,1] B: [5,4,3,2,1]
Sort (OrderFunction): сортируйте массив по указанным параметрам
var a = [1,2,3,4,5];
var b = a.sort (); // A: [1,2,3,4,5] B: [1,2,3,4,5]
Slice (Start, End): Возвращает новый массив, состоящий из элементов из указанного подписания Start, к индексу End в исходном массиве.
var a = [1,2,3,4,5];
var b = a.slice (2,5); // A: [1,2,3,4,5] B: [3,4,5]
Присоединение (разделитель): группируйте элементы массива в строку, с сепаратором в качестве сепаратора. Если опущены, используйте запятые в качестве сепаратора по умолчанию.
var a = [1,2,3,4,5];
var b = a.join ("|"); // A: [1,2,3,4,5] B: "1 | 2 | 3 | 4 | 5"
Вот еще один способ использовать массив для имитации JavastringBuffer для обработки строк:
/**
* Функция обработки строки
*/
функция stringBuffer () {
var arr = new Array;
this.append = function (str) {
arr [arr.length] = str;
};
this.ToString = function () {
return arr.join (""); // пинговать массив, который добавляет в строку
};
}
Сегодня я внезапно обнаружил, что Join - хороший способ преобразовать массивы в строки в приложении, поэтому я заключил их в объекты и использовал:
/**
*Преобразование массивов в строки, которые разделены конкретными символами
*/
Функция ArrayToString (arr, сепаратор) {
if (! seperator) sepreator = ""; // Если сепаратор нулевой, по умолчанию он будет пуст по умолчанию
return arr.join (разделитель);
}
/**
* Найти строку, содержащуюся в массиве
*/
Функция arrayfindstring (arr, string) {
var str = arr.join ("");
вернуть str.indexof (string);
}