Многомерные массивы в JavaScript

Элементы массива могут быть не только строками и числами, но и массивами. В этом случае у нас получится массив массивов или многомерный массив.

В следующем примере массив arr состоит из трех элементов, в свою очередь являющихся массивами:

let arr = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i']];

Перепишем в более понятном виде:

let arr = [ ['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i'], ];

В зависимости от уровня вложенности массивы могут быть двухмерными - массив массивов, трехмерными - массив массивов массивов (ну и так далее - четырехмерными, пятимерными и тп).

Приведенный выше массив является двухмерным, так как внутри одного массива расположены другие подмассивы и уже в этих подмассивах нет других массивов.

Чтобы вывести какой-либо элемент из двухмерного массива следует писать уже не одну пару квадратных скобок, а две:

let arr = [ ['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i'], ]; console.log(arr[0][1]); // выведет 'b' console.log(arr[1][2]); // выведет 'f'

Дан следующий массив:

let arr = [ ['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i'], ['j', 'k', 'l'], ];

Выведите с его помощью элементы с текстом 'l', 'e', 'g' и 'a'.

Дан следующий массив:

let arr = [[1, 2], [3, 4], [5, 6]];

Найдите сумму всех его элементов.

Трехмерный массив

Вот пример трехмерного массива:

let arr = [ [ ['a', 'b'], ['c', 'd'], ], [ ['e', 'f'], ['g', 'h'], ], [ ['i', 'j'], ['k', 'l'], ], ];

Для вывода элементов из такого массива уже необходимо написать три квадратные скобки:

console.log(arr[0][0][0]); // выведет 'a' console.log(arr[2][1][0]); // выведет 'k'

Дан следующий массив:

let arr = [ [ [1, 2], [3, 4], ], [ [5, 6], [7, 8], ], ];

Найдите сумму всех элементов приведенного массива.

Произвольные массивы

Многомерные массивы не обязательно должны быть такими, как мы рассмотрели выше. Посмотрите, например, на следующий массив:

let arr = [['a', 'b', [1, 2, 3], [4, 5]], ['d', ['e', 'f']]];

Перепишем его в более понятном виде:

let arr = [ [ 'a', 'b', [1, 2, 3], [4, 5], ], [ 'd', ['e', 'f'], ], ];

Как вы видите, этот массив "неправильный". В нем рядом с обычными элементами (например, 'a', 'b') располагаются массивы ([1, 2, 3] и [4, 5]).

Дан следующий массив:

let arr = [[1, 2, 3, [4, 5, [6, 7]]], [8, [9, 10]]];

Найдите сумму всех элементов приведенного массива.