В ES5 добавлено много новых вещей, и понимание их будет очень полезно написать JavaScript. Например, в массиве нам, возможно, не нужно идти на петли с простым и привлекательным способом.
Новый метод написания массивов был добавлен в ES5 следующим образом:
Foreach (JS V1.6)
Карта (JS V1.6)
Фильтр (JS V1.6)
Некоторые (JS v1.6)
Каждый (JS v1.6)
Индекс (JS V1.6)
LastIndexof (JS V1.6)
уменьшить (JS V1.8)
REDUCERIGE (JS V1.8)
1. Обычно используемые свойства объекта массива в JS:
Как показано на рисунке, часть, отмеченная красным кругом, является новым атрибутом, добавленным в ES5.
2. Статус поддержки браузера:
• т.е. 9+;
•Хром;
• Firefox2+;
• Safari 3+;
• Опера 9,5+;
3. Метод позиции
Ecmascript5 определяет 2 метода позиции для массивов. indexOf (), lastIndexof ();
Оба метода получают два параметра: элемент, который можно найти, и (необязательный) индекс, указывающий местоположение отправной точки поиска.
Среди них indexof () начинает оглядываться назад с начала массива (позиция 0), в то время как LastIndexOF () начинает оживлять с конца массива.
Оба метода должны вернуть позицию элемента, который можно найти в массиве, или вернуть -1, если он не найден;
Пример:
var numbers = [1,2,3,4,5,4,3,2,1]; оповещение (numbers.indexof (4)); //4alert(number.lastindexof(4)); //5alert(number.indexof(4,4)); //5alert(number.lastindexof(4,4)); // 3
4. Метод итерации
Ecmascript5 определяет 5 итерационных методов для массивов.
4.1. все ()
Определение и использование: метод каждого () используется для определения того, соответствуют ли все элементы массива указанные условия (предоставленные функцией).
Метод каждого () использует указанную функцию для обнаружения всех элементов в массиве:
• Если в массиве обнаружен элемент, который не выполняется, все выражение возвращает false, а остальные элементы не будут обнаружены снова.
• Верните True, если все элементы удовлетворяют условию.
Примечание: каждый () не будет обнаружить пустые массивы.
Примечание. Каждый () не меняет исходный массив.
Описание: Обнаружение, являются ли все элементы возраста массива больше 18:
var ages = [32, 33, 16, 40]; function checkadult (age) {return age> = 18;} function myfunction () {document.getElementById ("demo"). innerHtml = ages.every (checkadult);};};};};};};};};Результат:
ЛОЖЬ;
4.2. Некоторый()
Определение и использование: метод некоторых () используется для определения того, соответствуют ли элементы в массиве указанные условия (предоставленные функцией).
Запустите заданную функцию на каждом элементе в массиве, и если функция возвращает истину для любого элемента, она возвращает true;
Код заключается в следующем:
var numbers = [1,2,3,4,5,4,3,2,1]; var someresult = number.some (функция (элемент, индекс, массив) {// элемент относится к значению массива; индекс относится к массиву;Результат:
истинный;
4.3. фильтр()
Определение и использование: метод Filter () создает новый массив, а элементы в новом массиве проверяются на все элементы в указанном массиве, которые соответствуют критериям.
Запустите заданную функцию на каждом элементе в массиве, возвращая массив элементов, которые вернут True.
Описание: Чтобы вернуть массив со значениями, превышающими 2, код следующим образом:
var numbers = [1,2,3,4,5,4,3,2,1]; var filterResult = number.filter (функция (элемент, индекс, массив) {// Элемент относится к значению массива; индекс относится к массивому подписанию; массив относится к самому массиву; return (item> 2);}); Alert (FileMorResult);Результат:
[3,4,5,4,3]
4.4. map ()
Определение и использование: метод Map () возвращает новый массив, а элементы в массиве - это значения, обработанные исходным элементом массива после вызова функции.
Запустите заданную функцию на каждом элементе в массиве, возвращая массив, состоящий из результатов каждого вызова функции.
Описание: Умножьте каждый член в массиве на 2 и верните массив, состоящий из этих продуктов. Код заключается в следующем:
var numbers = [1,2,3,4,5,4,3,2,1]; var mapResult = number.map (функция (элемент, индекс, массив) {// пункт относится к значению массива; индекс относится к массиву;Результат:
[2,4,6,8,10,8,6,4,2]
4.5. foreach ()
Определение и использование: запустите заданную функцию на каждом элементе в массиве. Этот метод не имеет возврата.
По сути, то же самое, что и использование цикла для итерации через массив. Код заключается в следующем:
var numbers = [1,2,3,4]; numbers.foreach (функция (элемент, индекс, массив) {console.log (item);});Результат:
1
2
3
4
5. уменьшить метод
Ecmascript5 добавляет два новых метода для уменьшения массивов: REATE () и REDUCERIGE ();
Эти два метода будут повторять все элементы в массиве, а затем построить окончательное возвращенное значение. Среди них метод REMUT () начинается с первого элемента массива и проходит через него один за другим.
REDUCERIGHT () начинается с последнего элемента массива и перемещается вперед к первому предмету. Оба метода получают два параметра: функция, вызванная по каждому элементу, и (необязательно) в качестве начального значения для сужащей базы.
Функция, передаваемая для уменьшения () и Reduceright (), получает 4 параметра: предыдущее значение, текущее значение, индекс элемента и объект массива.
Описание: Используйте метод REMUT () для выполнения операции поиска суммы всех значений в массиве. Код заключается в следующем:
var values = [1,2,3,4,5]; var sum = values.reduce (function (prev, cur, index, array) {return prev+cur;}); alert (sum);Результат:
15
Выше приведено соответствующее знание вновь добавленного метода массива в стандарте JavaScript ES5, введенного вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!