Как сделать 2D-массивы в Javascript
Всем привет,
Я решил сделать несколько постов о некоторых структурах данных, которые можно легко создать на других языках, но которые не так просто создать на JS.
Например, в Java таким образом можно было бы легко объявить двумерный массив 3 на 4.
int[][] myArray; myArray = new int[3][4]
Его эквивалент в Javascript был бы таким, если бы я действительно строго придерживался одного и того же количества пустых столбцов в строке:
const myArray=[]
for(let row = 0; row < 3; row++){
myArray[row]=new Array(4)
}
/*
[ [ <4 empty items> ], [ <4 empty items> ], [ <4 empty items> ] ]
*/
Вот однострочник, который создает массив того же размера 3 на 4, заполненный неопределенными значениями:
const myArray = [...Array(3)].map(row => row = [...Array(4)]) /* [ [ undefined, undefined, undefined, undefined ], [ undefined, undefined, undefined, undefined ], [ undefined, undefined, undefined, undefined ] ] */
С теплом,
Ана
P.S. Ознакомьтесь с этим пакетом npm для 2D-массива JS! https://www.npmjs.com/package/array-2d