Array Multidimensionali in JavaScript
- Gli array multidimensionali in JavaScript sono rappresentati come array di array.
- Per accedere a un elemento in un array multidimensionale, si utilizza l'operatore
[]
due volte, ad esempiomatrice[x][y]
. - Gli array multidimensionali possono essere utilizzati per rappresentare strutture come matrici o tabelle.
- È possibile creare array multidimensionali di qualsiasi dimensione, ma gli array di array possono avere dimensioni diverse per ogni riga.
Array Multidimensionali
Un array multidimensionale è un array i cui elementi possono essere indicizzati da più di un indice. Dal punto di vista matematico si tratta di una matrice a due o più dimensioni.
JavaScript non supporta veri array multidimensionali, ma è possibile riprodurne il comportamento con array di array.
Per accedere a un valore in un array di array, è sufficiente utilizzare l'operatore []
due volte. Ad esempio, supponiamo che la variabile matrice
sia un array di array di numeri. Ogni elemento in matrice[x]
è un array di numeri. Per accedere a un numero particolare all'interno di questo array, dobbiamo scrivere matrice[x][y]
.
Ecco un esempio concreto che utilizza un array bidimensionale per creare le tabelline:
// Creare un array multidimensionale
// Prima crea un array di 10 elementi che corrispondono
// alle righe della tabella
let tabella = new Array(10);
for(let i = 0; i < tabella.length; i++) {
// Per ogni riga, creiamo un array di 10 elementi
tabella[i] = new Array(10);
}
// Inizializza l'array multidimensionale
for(let riga = 0; riga < tabella.length; riga++) {
for(let colonna = 0; colonna < tabella[riga].length; colonna++) {
tabella[riga][colonna] = (riga + 1) * (colonna + 1);
}
}
// Stampa la tabella
for(let riga = 0; riga < tabella.length; riga++) {
let rigaStringa = "";
for(let colonna = 0; colonna < tabella[riga].length; colonna++) {
// Aggiungi il valore alla stringa della riga
rigaStringa += tabella[riga][colonna] + "\t";
}
console.log(rigaStringa);
}
Il risultato sarà:
1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
4 8 12 16 20 24 28 32 36 40
5 10 15 20 25 30 35 40 45 50
6 12 18 24 30 36 42 48 54 60
7 14 21 28 35 42 49 56 63 70
8 16 24 32 40 48 56 64 72 80
9 18 27 36 45 54 63 72 81 90
10 20 30 40 50 60 70 80 90 100
La differenza principale tra un array multidimensionale e un array di array è che gli array multidimensionali (nei linguaggi che li supportano) hanno la stessa dimensione per ogni colonna, mentre gli array di array in JavaScript possono avere dimensioni diverse per ogni riga. Ad esempio, possiamo creare un array di array in cui la prima riga ha 3 elementi, la seconda riga ha 5 elementi e così via:
let arrayDiArray = [
[1, 2, 3],
[4, 5],
[6, 7, 8, 9, 10]
];