Nella guida a Javascript del sito abbiamo visto cosa sono gli array (puoi leggere la lezione) e li abbiamo trattati nel loro aspetto piรน semplice, ovvero quello monodimensionale (a dimensione singola). In questo articolo, ci concentreremo sugli array multidimensionali, un concetto fondamentale per gestire dati complessi, e vedremo un esempio di implementazione di un array bidimensionale e di un array tridimensionale in Javascript.
Array Monodimensionali
Lo scopo di avere array a piรน dimensioni รจ quello di costruire gabbie complesse di dati, a differenza dei semplici schemi logici a cui siamo abituati, seguendo la stessa filosofia dei database relazionali.
Un array monodimensionale ha il seguente aspetto:
const arrayMonodimensionale = [1, 2, 3, 4, 5];
Possiamo aggiungere un nuovo item come segue:
arrayMonodimensionale.push(6);
Per accedere al suo valore, richiamando l’item dell’array desiderato, ad esempio il terzo elemento:
console.log(arrayMonodimensionale[2]); // Restituisce 3
Adesso abbandoniamo per un attimo questo concetto e vediamo come popolare un array multidimensionale. Questo ci permette di ricreare degli array sulla scorta degli item dell’array madre.
Array Bidimensionali
La sintassi per popolare un array bidimensionale รจ la seguente:
const arrayBidimensionale = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
Adesso possiamo accedere a un item di un array come segue:
console.log(arrayBidimensionale[1][2]); // Restituisce 6
Vediamo ora, attraverso un ciclo, come accedere a tutti gli item del nostro array multidimensionale:
for (let i = 0; i < arrayBidimensionale.length; i++) {
for (let j = 0; j < arrayBidimensionale[i].length; j++) {
console.log(arrayBidimensionale[i][j]);
}
} // Restituisce 1, 2, 3, 4, 5, 6, 7, 8, 9
Trattandosi di un array bidimensionale, abbiamo utilizzato un doppio ciclo per fornire l’accesso a tutti gli elementi.
Array Tridimensionali
La stessa filosofia viene utilizzata per gli array tridimensionali. Vediamo ora, modificando l’esempio precedente, come implementare unย array a tre dimensioni. Innanzitutto dichiariamo l’array:
const arrayTridimensionale = [
[
[1, 2],
[3, 4]
],
[
[5, 6],
[7, 8]
]
];
Ora aggiungiamo un elemento al nodo che contiene i valori 1 e 2:
arrayTridimensionale[0][0].push(9);
Vediamo ora come estrarre gli item con un ciclo. Prima, dichiariamo le variabili “contatore” che utilizzeremo per il ciclo:
for (let i = 0; i < arrayTridimensionale.length; i++) {
for (let j = 0; j < arrayTridimensionale[i].length; j++) {
for (let k = 0; k < arrayTridimensionale[i][j].length; k++) {
console.log(arrayTridimensionale[i][j][k]);
}
}
} // Restituisce: 1, 2, 9, 3, 4, 5, 6, 7, 8
Conclusioni
L’articolo che abbiamo proposto non รจ finalizzato a offrire un esempio pratico di utilizzo degli array multidimensionali, ma torna utile come appendice puramente didattica della guida a Javascript del sito. Gli array, siano essi monodimensionali o multidimensionali, sono tipi di dati molto pesanti in termini di consumo di risorse. Esorto quindi il lettore a farne uso solo quando strettamente necessario.