Veloce ripasso di Javascript (Parte 3)

In questo articolo andremo a parlare dei cicli “For” in Javascript. Perchè parlo al plurale? beh Javascript ne ha ben 3 diverse varianti.

Cicli For in Javascript
Ciclo for Tradizionale

Il tipico ciclo “for” quello che troviamo in tutti i linguaggi like “C” (anche il PHP) nella forma “Inizializzazione, condizione; aggiornamento”. Un veloce esempio per rinfrescare la memoria

/* Esempio ciclo For tradizionale Javascript */
var idx;
for (idx=0;idx < 10;idx++) //eseguirà per 10 volte il "Qualcosa" contenuto nell'istruzione o nel blocco di istruzioni.
{
   //Esegui qualcosa
}

Notate la similitudine con il ciclo While; lo stesso codice lo possiamo anche scrivere con…

var idx=0; //inizializzazione
while (idx < 10){ //condizione
   //esegui qualcosa
  idx++; //modifica
}
Ciclo for ... in

Il ciclo for … in permette (come il ciclo for … of) di lavorare in maniera più agevole con gli array in Javascript.

Per ogni elemento di un array, il ciclo for … in permette di conservare l’indice in una variabile (molto più semplice che utilizzando un normale ‘for’). Ecco un piccolo esempio:

/* Javascript ciclo for ... in */
var quantita = ['uno', 'tre', 'cinque', 'sette', 'nove']; //l'array di partenza
var indice;
for (indice in quantita) { //in quantità vi sarà l'indice dell'array (nel nostro caso 0,1,2...)
	stampa(quantita[indice]); //Stampa l'"indicesimo" elemento dell'array quantita. La funzione non esiste, quindi genererà un errore (è solo per capire cosa fa)
}

Comodo soprattutto se si hanno array molto grandi da voler “percorrere” per intero. Sicuramente più veloce è più “significante” di un ciclo ‘For’ (anche se in realtà nulla cambia a livello “concettuale”).

Ciclo for ... of

Molto simile al ciclo for … in, il ciclo for … of permette di “percorrere” un array ritornando in una specifica variabile il valore del singolo elemento dell’array (non l’indice ma il valore reale).

Un piccolo esempio anche in questo caso, permetterà di carpirne la differenza sostanziale…

/* Javascript ciclo for ... of */
var quantita = ['uno', 'tre', 'cinque', 'sette', 'nove']; //l'array di partenza
var valore;
for (valore of quantita) { //in quantità vi sarà il valore dell'Array (nel nostro caso 'uno', 'tre'...)
	stampa(valore); //Stampa il valore attuale della posizione dell'array considerata. La funzione non esiste e genererà un errore (è solo per capire cosa fa)
}

Il ciclo for … of fa parte delle specifiche ECMAScript 6 e potrebbe non essere disponibile in versioni JavaScript più datate.

Per questo articolo è tutto. Nel prossimo articolo parleremo di ‘Switch” ed un piccolo accenno alle funzioni.

Alla prossima e… buona programmazione a tutti.

Data di ultima modifica 8 Settembre 2023