Тип массива является наиболее часто используемым эталонным типом в Ecmascript. Данные в Ecmascript сильно отличаются от массивов на большинстве других языков. Хотя данные в ECMASCRIPT представляют собой упорядоченный список данных, таких как массивы на других языках, разница в том, что каждый элемент в массиве ECMASCRICT может содержать любой тип данных, будь то числовое значение, строку или объект. В то же время размер массива в Ecmascript может быть динамически скорректирован, то есть он может автоматически расти в соответствии с добавлением данных, чтобы приспособить вновь добавленные данные. Ниже приведена сводка общеиспользованных функций операции и использования массивов в JavaScript.
• Создать массив
Существует два основных метода создания массивов: конструктор и литералы массива, как показано ниже:
var arr = new Array (); var arr = [];
Для конструктора мы можем передать числовое значение для создания массива, содержащего заданное количество терминов, следующим образом:
var arr = new Array (3); // длина массива 3
Вы также можете напрямую передать значения, хранящиеся в массиве, следующим образом:
var arr = new Array ("Red", "Green", "Blue");В любом случае, рекомендуется использовать массивные литералы для создания массивов.
• Массив обнаружения
Для одной глобальной среды выполнения экземпляр оператора может обнаружить, например, является ли это массивом:
var arr = [1,2,3]; console.log (экземпляр Arr); //истинный
Однако, если веб -страница содержит несколько структур, она также содержит несколько глобальных сред. ES5 добавил метод Array.isArray (), чтобы определить, является ли значение массивом, независимо от того, какую глобальную среду выполнения он был создан следующим образом:
if (array.isarray (arr)) {// выполнять некоторые операции}• Преобразование строки массива
Каждый объект имеет методы ToLocalESTRING (), ToString () и значение (). Вызов метода ToString () массива вернет строковую сплайсированную в форме строки каждого значения в массиве и разделенной запятыми. Вызов метод значения () массива вернет массив, но на самом деле он называется методом ToString () каждого элемента в массиве, следующим образом:
var arr = ["red", "green", "blue"]; console.log (arr.toString ()); // красный, зеленый, синий консоль.log (arr.valueof ()); // красный, зеленый, синий консоль.log (arr); // красный, зеленый, синий
Метод ToLocalESTRING () массива отличается от ToString (), который он будет вызывать метод ToLocalESTRING () каждого элемента в массиве, и сплайсирует возвращаемое значение каждого элемента TOLOCALESTRING () метод в строку, разделенную запятыми. Используя метод joint (), вы можете использовать разные сепараторы для создания этой строки, следующим образом:
var arr = ["red", "green", "blue"]; console.log (arr.join (",")); // красный, зеленый, синий консоль.log (arr.join ("||")); // красный || зеленый || синий• Добавить и удалить массивы
Метод push () получает любое количество параметров, добавляет их один за другим к концу массива и возвращает длину модифицированного массива, например:
var arr = [1,2,3]; arr.push (4,5); console.log (arr); // [1,2,3,4,5]
В отличие от push () метод POP (), который удаляет последний элемент с конца массива и возвращает удаленный элемент, например:
var arr = [1,2,3]; arr.pop (); // 3 arr.pop (); // 2 console.log (arr); // [1]
Двумя другими используемыми методами являются Shift () и Unshift (), которые похожи на Pop () и push (). Метод shift () используется для удаления элементов из начального положения массива и возврата удаленных элементов, например:
var arr = [1,2,3]; arr.shift (); // 1 arr.shift (); // 2 console.log (arr); // [3]
Метод unshift () является противоположностью цели shift (). Он может добавить любой предмет в передний конец массива и вернуть длину нового массива, например:
var arr = [1,2,3]; arr.unshift (4); // Длина возврата 4 arr.unshift (5); // Длина возврата 5 Консоль.log (arr); // [1,2,3,4,5]
• Перевернуть и что -то вроде массивов
Метод FLIP, предоставленный массивом, - это Reverse (), который инвертирует порядок элементов данных, например:
var arr = [1,2,3]; arr.reverse (); console.log (arr); // [3,2,1]
Sort () также может сортировать массивы, но его метод сортировки по умолчанию не является размером, но отсортирован один за другим в соответствии с соответствующей строкой. Метод SORT () может получить функцию сравнения и выполнить пользовательскую сортировку, например:
Функция сравнения (value1, value2) {return value1-value2; } var arr = [1,3,2,5,4]; Arr.Sort (сравните); console.log (arr); // [1,2,3,4,5]• Подключение массива
Метод concat () создаст копию текущего массива, затем добавит полученные параметры в конец копии и, наконец, вернет недавно построенный массив, например, с оригинальным массивом без изменений:
var arr = [1,2,3]; var arr2 = arr.concat (4, [5,6]); console.log (arr); // [1,2,3] console.log (arr2); // [1,2,3,4,5,6]
• сегментация массива
Метод slice () получает один или два параметра, то есть начальные и конечные позиции элемента, который будет возвращен. Если требуется только один параметр, возвращаются все элементы из указанной позиции до конца массива. Если получены два параметра, все элементы между начальными и конечными позициями возвращаются, но элементы, которые не включают в себя конечные позиции, например:
var arr = [1,2,3,4,5]; var arr2 = arr.slice (1); // [2,3,4,5] var arr3 = arr.slice (1,3); // [2,3]
Обратите внимание, что метод slice () не повлияет на исходный массив.
• Метод SPLICE ()
Поскольку метод Splice () очень мощный, я суммирую его отдельно. Он может получить три параметра. Первый параметр указывает местоположение добавления или удаления элементов, второй параметр указывает количество удаленных элементов, а второй параметр указывает новые элементы, добавленные в массив (необязательно). Предоставляя различные параметры, вы можете реализовать такие функции, как удаление, вставка и замена, такие как:
var arr = [1,2,3,4,5]; arr.splice (2,0,11,22); // вставить два элемента из позиции 2, console.log (arr); // [1,2,11,22,3,4,5] arr.splice (2,2,33,44); // Удалить два элемента из позиции 2, вставить два элемента и вернуть консоль удаленного элемента.log (arr); // [1,2,33,44,4,5] arr.splice (1,1); // Удалить один элемент из позиции 1 и вернуть консоль удаленного элемента.log (arr); // [1,33,44,4,5]
• Метод положения массива
ES5 предоставляет два метода положения: indexof () и astindexof (). Оба метода получают два параметра: элемент, который можно найти, и индекс, указывающий местоположение отправной точки поиска (необязательно). Метод indexof () оглядывается назад с начала массива, в то время как LastinDexof () смотрит вперед с конца массива, например:
var arr = [1,2,3,4,5,4,3,2,1]; console.log (arr.indexof (4)); // 3 console.log (arr.lastindexof (4)); // 5 console.log (arr.indexof (4,4)); // 5 console.log (arr.lastindexof (4,4)); // 3
• Метод итерации массива
ES5 определяет 5 итеративных методов, каждый из которых получает два параметра: функция, которая будет выполнена на каждом элементе, и (необязательно) объект Scope, который запускает функцию - значение, которое влияет на это. Функция, проходящая в этих методах, может получать три параметра: значение элемента массива, индекс элемента в массиве и сам объект массива.
Среди них метод каждого () и некоторые () метод похожи. Для метода каждого (), передаваемой функции должна возвращать истину для каждого элемента, прежде чем этот метод вернет true. Для () метод возвращает истину до тех пор, пока передаваемая функция возвращает истину для любого элемента в массиве. Примеры следующие:
var arr = [1,2,3,4,5,4,3,2,1]; var wylyresult = arr.every (function (item, index, array) {return (item> 2);}); console.log (everyresult); // false, не все больше 2 var someresult = arr.some (function (item, index, array) {return (item> 2);}); console.log (someresult); // true, если один элемент больше 2Метод Filter () определяет, следует ли включать элемент в возвращаемый массив на основе данной функции, например:
var arr = [1,2,3,4,5,4,3,2,1]; var filterResult = arr.filter (function (item, index, array) {return (item> 2);}); console.log (FilterResult); // [3,4,5,4,3], возвращает массив со всеми значениями, превышающими 2Метод map () запускает заданную функцию для каждого элемента в массиве, а затем возвращает массив, состоящий из результата каждой функции элемента, например:
var arr = [1,2,3,4,5,4,3,2,1]; var mapResult = arr.map (function (item, index, array) {return item*2;}); console.log (mapResult); // [2,4,6,8,10,8,6,4,2], умножьте каждый элемент в исходном массиве на 2 и возвратПоследний метод - foreach (), который запускает заданную функцию только на каждом элементе в массиве, например, без возврата, например:
var arr = [1,2,3,4,5,4,3,2,1]; arr.foreach (function (item, index, array) {// выполнять некоторые операции});• Метод сокращения массива
ES5 также предоставляет два метода для уменьшения массивов: уменьшить () и REDUCERIGE (). Оба метода отражают все элементы в массиве и возвращают окончательное значение. Уменьшить () постепенно пересекается от первого элемента до последнего элемента, Reduceright () проходит от последнего элемента до конца первого элемента. Обе функции получают четыре параметра: предыдущее значение, текущее значение, индекс элемента и объект массива. Любое значение, возвращаемое этой функцией, будет автоматически передано следующему элементу в качестве первого параметра. Например, используйте метод Cread (), чтобы найти сумму всех элементов в массиве:
var arr = [1,2,3,4,5]; var sum = arr.reduce (function (pre, cur, index, array) {return pre+cur;}); console.log (sum); // 15В первый раз, когда функция обратного вызова выполняется, Pre IS 1, а CUR - 2. Второй раз, pre - 3 (1+2), а CUR - 3. Этот процесс будет доступ к каждому элементу в массиве и, наконец, вернет результат. Метод REDUCERIGE () аналогичен уменьшению (), но направление противоположное.
Эта заметка в основном суммирована на основе расширенного программирования JavaScript и онлайн -ресурсов. Пожалуйста, укажите это, если есть какие -либо неполные точки.
Приведенная выше статья основана на методе массива массива JavaScript (обязательное прочитание для начинающих)-это весь контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.