Page 159 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 159
function ( ) { return " в элементе массива может также находиться и функция" ;
} ,
" t hree" ,
] ;
/ / доступ к элементам
arrl [ O ] ; 1 1 1
arr1 [ 2 ] ; 1 1 3
arrЗ [ l ] ; 1 1 [ " опе ", 2, "three "]
arr4 1 ] [ О ] ; // { п ате : "Susan ", type : "object " }
[
/ / длина массива
arrl . l e ngth; 1 1 3
arr4 . length ; 1 1 5
arr4 [ 1 ] . l ength ; 1 1 2
/ / увеличение размера массива
r
ar 1 [ 4 ] = 5 ;
ar l ; / / [ 1 , 2 , 3 , undefined, 5]
r
arrl . l ength; 1 1 5
/ / при доступе (не присвоении) по индексу, большему, чем есть
/ / в массиве, размер ма ссива *не* изменяется
arr2 1 0 ] ; / / undefined
[
arr2 . length; 1 1 3
// Конструктор Array (используется редко)
const arrS new Array ) ; 1 1 пустой массив
(
const arrб new Array ( l , 2 , 3 ) ; 1 1 [ 1 , 2 , 3]
const arr7 new Array ( 2 ) ; 1 1 массив длиной 2 (все
11 элементы undefined)
const arr8 new Array ( " 2 " ) ; 1 1 [ "2 "]
Ма н и п ул и р ов а н и е содерж и м ы м массива
Прежде чем продолжить, рассмотрим весьма полезные методы манипулирования
массивами. Один из аспектов обработки массивов, к сожалению, невразумительный,
относится к различию между методами, изменяющими сам массив "по месту'', и ме
тодами, возвращающими новый массив. Никакого соглашения по этому поводу нет,
и это только один из нюансов, которые вам придется запомнить (например, метод
push изменяет сам массив, а concat - возвращает новый массив).
В некоторых языках, таких как Ruby, есть соглашения, которые облег
чают определение, модифицирует ли метод нечто по месту или воз
вращает копию. Например, в Ruby, если у вас есть строка str и вы
вызываете метод s t r . downcase, он возвратит литерал в нижнем
1 6 0 Глава 8. Массивы и их обработка

