Выбрать главу

// Создать многомерный массив

var table = new Array(10); // В таблице 10 строк

for(var і = 0; і < table.length; i++)

  table[i] = new Array(10); // В каждой строке 10 столбцов

// Инициализировать массив

for(var row = 0; row < table.length; row++) {

  for(col = 0; col < table[row].length; col++) {

    table[row][col] = row*col;

  }

}

// Расчет произведения 5*7 с помощью многомерного массива

var product = table[5][7]; // 35

7.8. Методы класса Array

Стандарт ECMAScript 3 определяет в составе Array.prototype множество удобных функций для работы с массивами, которые доступны как методы любого массива. Эти методы будут представлены в следующих подразделах. Более полную информацию можно найти в разделе Array в справочной части по базовому языку JavaScript. Стандарт ECMAScript 5 определяет дополнительные методы для выполнения итераций по массивам - эти методы рассматриваются в разделе 7.9.

7.8.1. Метод join()

Метод Array.join() преобразует все элементы массива в строки, объединяет их и возвращает получившуюся строку. В необязательном аргументе методу можно передать строку, которая будет использоваться для отделения элементов в строке результата. Если строка-разделитель не указана, используется запятая. Например, следующий фрагмент дает в результате строку «1,2,3»:

var а = [1, 2, 3]; // Создать новый массив с указанными тремя элементами

a.join(); // => "1,2,3"

a.join(" "); // => "1 2 З"

a. join(""); // => "123"

var b = new Аггау(10); // Массив с длиной, равной 10, и без элементов

b. join("-') // => "---------" строка из 9 дефисов

Метод Array.join() является обратным по отношению к методу String.split(), создающему массив путем разбиения строки на фрагменты.

7.8.2. Метод reverse()

Метод Array.reverse() меняет порядок следования элементов в массиве на обратный и возвращает переупорядоченный массив. Перестановка выполняется непосредственно в исходном массиве, т. е. этот метод не создает новый массив с переупорядоченными элементами, а переупорядочивает их в уже существующем массиве. Например, следующий фрагмент, где используются методы reverse() и join(), дает в результате строку "3,2,1":

var а = [1,2,3];

a.reverse().join(); // => "3,2,1”: теперь а = [3,2,1]

7.8.3. Метод sort()

Метод Array.sort() сортирует элементы в исходном массиве и возвращает отсортированный массив. Если метод sort() вызывается без аргументов, сортировка выполняется в алфавитном порядке (для сравнения элементы временно преобразуются в строки, если это необходимо):

var а = new Array("banana", "cherry", "apple");

a.sort();