2D-массив JavaScript: создание двумерного массива в JavaScript

JavaScript не предоставляет многомерный массив изначально и не предоставляет никаких методов для определения 2D-массива. Однако вы можете создать многомерный массив, определив массив элементов, где каждый элемент также является другим массивом.

2D-массив JavaScript

Чтобы создать 2D-массив в JavaScript, мы должны создать массив массивов. Чтобы объявить 2D-массив, вы используете тот же синтаксис, что и объявление одномерного массива.

Синтаксис 1D-массива

  let data = []; 

Чтобы объявить 2D-массив, используйте следующий синтаксис.

Синтаксис 2D-массива

 let data = [[], [], []]; 

В приведенном выше коде мы определили пустой 2D array.

Давайте определим 2D-массив с некоторыми значениями.

//app  .jslet data = [['Millie', 15], ['Finn', 17], ['Dustin', 17]]; console.log (данные); 

Вывод

 [['Millie', 15], ['Finn', 17], ['Dustin', 17]] 

In В указанном выше массиве данных первое измерение представляет имя актера, а второе — возраст каждого актера.

JavaScript console.table ()

Метод console.table () отображает табличные данные в виде таблицы. Функция table () принимает один обязательный аргумент data, который должен быть массивом или объектом, и один дополнительный столбец необязательного параметра.

Он регистрирует данные в виде таблицы. Каждый элемент в массиве (или перечислимое свойство, если данные являются объектом) будет строкой в ​​таблице. Мы можем использовать метод console.table () для отображения вышеприведенного вывода.

//app.jslet data = [['Millie', 15], ['Finn', 17], [  'Dustin', 17]]; console.table (data); 

Вывод

 node app┌────  ─────┬──────────┬────┐│ (индекс) │ 0 │ 1 │├──────────────────  ──┼────┤│ 0 │ 'Милли' │ 15 ││ 1 │ 'Финн' │ 17 ││ 2 │ 'Дастин' │ 17 │└─────────┴────  ──────┴────┘ 

Обратите внимание, что столбец (index) предназначен для иллюстрации, которая указывает индексы внутреннего массива.

Доступ к 2D-массиву в JavaScript

Чтобы получить доступ к элементу 2D-массива, сначала вы используете квадратные скобки для доступа к элементу внешнего массива, который возвращает внутренний массив; а затем используйте другую квадратную скобку для доступа к элементу внутреннего массива.

//app.jslet data = [['Millie', 15], ['Finn', 17], ['  Dustin ', 17]]; console.log (' Возраст Милли: ', data [0] [1]); 

Вывод

 Возраст Милли: 15 

Добавление элементов в 2D-массив

Чтобы добавить элементы в 2D-массив, используйте методы Array, такие как метод array push ().

//app. jslet data = [['Милли', 15], ['Финн', 17], ['Дастин', 17]]; data.push (['Сэди', 15], ['Калеб', 18]);  console.log (data); 

Вывод

 [['Милли', 15], ['Финн', 17  ], ['Dustin', 17], ['Sadie', 15], ['Caleb', 18]] 

В этом примере у нас уже есть 2D-массив с тремя элементами. Используя метод push (), мы добавляем еще два элемента в массив, и из вышеприведенного вывода видно, что мы успешно добавили два элемента в 2D-массив.

Чтобы вставить элемент в середине массива, используйте метод splice () массива JavaScript. Следующий код вставляет элемент во вторую позицию массива данных и отображает его в табличном формате.

//app.jslet data = [['Millie', 15], ['Finn  ', 17], [' Dustin ', 17]]; data.splice (1, 0, [' Sadie ', 15]) console.table (data); 

Вывод

 ┌──────────┬──────────┬──── (индекс) │ 0 │ 1  │├───────────────────┼────┤│ 0 │ 'Millie' │ 15 ││ 1 │ 'Sadie' │ 15 ││ 2 │ '  Finn '│ 17 ││ 3 │' Dustin '│ 17 │└─────────┴───────────────┘ 

Вы можете видеть, что он добавил новый элемент в позицию 1.

Добавление динамического свойства в 2D-массив

В следующем примере вычисляется процент возраста каждого символа на основе диапазона 80 лет и этот процент добавляется во внутренний массив.

//app.jslet data = [['Millie', 15],  ['Finn', 17], ['Dustin', 17]]; data.forEach (age => {let процент = ((age [1]/80) * 100) .toFixed (); age [2] =  процент + '%';}); console.table (данные); 

Вывод

 ┌─────────┬───────────┬────┬──  ─────┐│ (индекс) │ 0 │ 1 │ 2 │├─────────┼──────────┼────┼──────  ─┤│ 0 │ 'Millie' │ 15 │ '19% '││ 1 │' Finn '│ 17 │ '21%' ││ 2 │ 'Dustin' │ 17 │ '21% '│└─────  ────┴──────────┴────┴─────── 

Чтобы добавить новое свойство в 2D-массив, мы использовали JavaScript array forEach () , чтобы перебирать внутренний массив один за другим и добавлять процент к массиву. Когда мы видим в таблице, она станет столбцом таблицы.

Удаление элементов из 2D-массива JavaScript

Чтобы удалить элемент из массива, вы используете метод массива pop () или массива splice ().

//app.jslet data = [['Millie', 15], ['Finn  ', 17], [' Dustin ', 17]]; data.pop (); console.table (data); 

Вывод

 ┌─────────┬──────────┬────┐│ (указатель) │ 0 │ 1 │├────────  ─┼───────────┼────┤│ 0 │ 'Millie' │ 15 ││ 1 │ 'Finn' │ 17 │└─────────┴───  ───────┴────┘ 

Итерация 2D-массива

Для итерации 2D-массива в JavaScript , дважды используйте метод forEach ().

//app.jslet data = [['Millie', 15], ['Finn', 17], ['Dustin', 17]]; data.forEach (arr => {  arr.forEach (d => console.log (d));}); 

Вывод

 Millie15Finn17Dustin17 

Итак, если вы хотите перебрать каждый элемент двумерных или многомерных массивов, вам нужно использовать метод forEach () два раза, потому что это массивы внутри массива.

Заключение

Многомерный массив JavaScript почти работает как одномерный массив. Двумерный массив — это набор элементов с общим именем, организованных в виде матрицы в виде строк и столбцов. Двумерный массив — это массив массивов, поэтому мы создаем массив объектов одномерного массива.

См. Также

JavaScript-массив some ()

JavaScript-массив содержит

JavaScript-массив isArray ()

Оцените статью
nanomode.ru
Добавить комментарий