- Массивы — это особый тип объектов с цифровой индексацией элементов
- Если при обращении к элементу массива использовать вместо индекса имя( как в ассоциативном массиве), то JavaScript переопределит такой массив в стандартный объект. После этого свойства и методы массива будут возвращать неверный результат.
var cars = ["Saab", "Volvo", "BMW"] | |||
1 | cars instanceof Array | - вернет true, если cars - это массив | |
2 | cars.length | - количество элементов массива; на 1 больше, чем индекс последнего элемента массива | |
3 | last = cars[cars.length - 1] | - обращение к последнему элементу массива | |
4 | cars.forEach(myFunction1); | - обход всех элементов массива | - обход всех элеметов массива |
5 | cars.push("Ferari") | - добавляет элемент в конец массива; если присвоить метод переменной, то ей присвоится новая длина массива | |
cars[5] = "Toyota"; | - добавляет элемент в массив после указанного значения; на месте 5-го элемента образовалась дыра | ||
6 | cars.pop() | - удаляет последний элемент массива; - если присвоить метод переменной, то ей присвоится удалённый элемент |
|
7 | cars.shift(); | - удаляет первый элемент массива и сдвигает оставшиеся элементы к меньшим индексам; - если присвоить метод переменной, то ей присвоится удалённый элемент |
|
8 | cars.unshift("Audi") | - добавляет новый элемент в начало массива и передвигает другие элементы; возвращает новую длину массива | |
9 | delete cars[0] | - удаляет указанный элемент массива, образуя на его месте дыру | |
10 | cars.splice(0,1) | - удаляет дыры | |
cars.splice(1,2,"Audi","Toyota") | - определяет, куда, сколько и какие элементы нужно добавить в массив | ||
cars.slice(1,3) | - извлекает часть массива начиная с индекса 1 и заканчивая 3 | ||
11 | car1.concat(car2, car3, ["Toyota"]) | - слияние массивов | |
12 | cars.toString() | - преобразует массив в строку; на самом деле при выводе массива он и так автоматически преобразуется в строку | |
ECMAScript 5 (2009) | |||
1 | Array.isArray(cars) | - проверяет, является ли объект массивом |
var cars = ["Saab", "Volvo", "BMW"] | |||
1 | cars.sort() | - сортирует массив в алфавитном порядке | |
2 | cars.reverse() | - сортирует массив в обратном алфавитном порядке | |
var numbers = [40, 100, 1, 5, 25, 10] | |||
1 | numbers.sort(function(a, b) { return a - b }) | - числовая сортировка по возрастанию | |
numbers.sort(function(a, b) { return b - a }) | - числовая сортировка по убыванию | ||
numbers.sort(function(a, b){return 0.5 - Math.random()}) | - числовая сортировка в случайном порядке | ||
2 | Math.max.apply(null, numbers) | -наибольшее значение массива | |
Math.min.apply(null, numbers) | - наименьшее значение массива | ||
var cars = [{type:"Volvo", year:2016},{type:"Saab", year:2001},{type:"BMW", year:2010}]; | |||
1 | cars.sort(function(a, b){return a.year - b.year}) | - сортировка массивов объектов по значению | |
- сортировка массивов объектов по свойству строкового типа | |||
ECMAScript 5 (2009) | |||
1 | numbers.forEach(myFunction1) | - единожды вызывает функцию обратного вызова для каждого элемента массива; - myFunction1 - записывает значения элементов массива в строку, разделяя ";" |
|
2 | numbers.map(myFunction2) | - выполняет функцию обратного вызова для каждого элемента массива; - myFunction2 - умножает все элементы массива на 2 |
|
3 | numbers.filter(myFunction3) | - создает новый массив с элементами исходного массива, прошедшими заданную проверку; - myFunction3 - выбирает элементы массива, которые больше 18 |
|
4 | numbers.reduce(myFunction4) | - выполняет функцию обратного вызова с каждым элементом массива слева направо для вычисления единого значения; - myFunction4 - суммирует все элементы массива |
|
numbers.reduceRight(myFunction4) | - обрабатывает элементы массива справа налево | ||
numbers.reduce(myFunction4, 100) | - обрабатывает элементы массива с начальным значением 100 | ||
5 | numbers.every(myFunction3) | - проверяет, выполняют ли заданное условие все элементы массива | |
6 | numbers.some(myFunction3) | - проверяет, выполняет ли заданное условие хотя бы один элемент массива | |
7 | numbers.indexOf(100) | - ищет в массиве элемент с заданным значением и возвращает его индекс | |
numbers.indexOf(100, 2) | - ищет в массиве элемент с заданным значением, начиная с 3-го элемента; если элемент не найден - возвращает "-1" | ||
numbers.lastIndexOf(100) | - ищет в массиве элемент с заданным значением, начиная с конца массива, и возвращает его индекс | ||
ECMAScript 6 (2025) | |||
1 | numbers.find(myFunction3) | - возвращает значение первого элемента массива, прошедшего заданную проверку в функции обратного вызова | |
numbers.findIndex(myFunction3) | - возвращает индекс первого элемента массива, прошедшего заданную проверку в функции обратного вызова |