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. Массивы и их обработка
   154   155   156   157   158   159   160   161   162   163   164