Ядро JavaScript 1.5. Руководство по использованию

Объект Array


В JavaScript нет отдельного типа для массива данных. Однако Вы можете использовать предопределённый объект Array и его методы для работы с массивами в Ваших приложениях. Объект Array имеет методы для манипулирования массивами: объединения, разворачивания и сортировки. Он имеет также свойство для определения размера массива и другие свойства для использования с регулярными выражениями.

Массив это упорядоченный набор значений, к которым можно обращаться по имени и по индексу. Например, Вы имеете массив emp, содержащий имена служащих, индексированный по именам служащих. Так, emp[1] это служащий номер 1, emp[2] - служащий номер 2 и так далее.

Создание Массива

Чтобы создать Array-объект:

1. arrayObjectName = new Array(element0, element1, ..., elementN)

2. arrayObjectName = new Array(arrayLength)


arrayObjectName это имя нового объекта, либо свойство существующего объекта. При использовании Array-свойств и методов, arrayObjectName это либо имя существующего Array-объекта, либо свойство существующего объекта.

element0, element1, ..., elementN это список значений элементов массива. Когда специфицирована эта форма, массив инициализируется специфицированными значениями в качестве элементов массива, а свойство length массива устанавливается в количество аргументов.

arrayLength это начальный размер массива. Следующий код создаёт массив из 5 элементов:

billingMethod = new Array(5)

Литералы массива также являются Array-объектами; например, нижеследующий литерал является Array-объектом. См. .

coffees = ["French Roast", "Columbian", "Kona"]

Наполнение Массива



 

Вы можете заполнить массив путём присвоения значений его элементам. Например,

emp[1] = "Casey Jones"

emp[2] = "Phil Lesh"

emp[3] = "August West"


Вы можете также заполнить массив при его создании:

myArray = new Array("Hello", myVar, 3.14159)

Обращение к Элементам Массива

Вы можете обратиться к элементам массива через использование порядкового номера элемента. Например, Вы определили массив:


myArray = new Array("Wind","Rain","Fire")

Затем Вы обращаетесь к первому элементу массива myArray[0], а ко второму элементу - myArray[1].

Индексы элементов начинаются с нуля (0), но размер массива (например, myArray.length) отражает точное количество элементов в массиве.

Array-Методы


Array-объект имеет следующие методы:
 

  • concat объединяет два массива и возвращает новый массив;

  • join объединяет все элементы массива в строку;

  • pop удаляет последний элемент массива и возвращает этот элемент;

  • push добавляет один или более элементов в конец массива и возвращает эти последние добавленные элементы;

  • reverse разворачивает элементы массива: первый элемент становится последним, а последний - первым;

  • shift удаляет первый элемент массива и и возвращает этот элемент;

  • slice извлекает часть массива и возвращает новый массив;

  • splice добавляет и/или удаляет элементы из массива;

  • sort сортирует элементы массива;

  • unshift добавляет один или более элементов в начало массива и возвращает новый размер массива.


  • Например, Вы определили следующий массив:

    myArray = new Array("Wind","Rain","Fire")

    myArray.join() возвращает "Wind,Rain,Fire";

    myArray.reverse переворачивает массив так, что myArray[0] будет "Fire", myArray[1] - "Rain", а myArray[2] - "Wind".

    myArray.sort сортирует массив так, что myArray[0] будет "Fire", myArray[1] - "Rain", в myArray[2] - "Wind".

    Двухмерные Массивы


    Следующий код создаёт двухмерный массив:

    a = new Array(4)

    for (i=0; i < 4; i++) {

       a[i] = new Array(4)

       for (j=0; j < 4; j++) {

          a[i][j] = "["+i+","+j+"]"

       }
    }

    Создаётся массив, состоящий из следующих рядов/rows:

    Row 0:[0,0][0,1][0,2][0,3]

    Row 1:[1,0][1,1][1,2][1,3]

    Row 2:[2,0][2,1][2,2][2,3]

    Row 3:[3,0][3,1][3,2][3,3]



    Массивы и Регулярные Выражения


    Ели массив является результатом совпадения регулярного выражения и строки, этот массив возвращает свойства и элементы, предоставляющие информацию о совпадении. Массив является return-значением методов RegExp.exec, String.match и String.split. Об использовании массивов с регулярными выражениями см. .





    Содержание раздела