do while
Il ciclo do while è una struttura di controllo iterativa di JavaScript che permette di eseguire un blocco di codice almeno una volta, indipendentemente dalla condizione di partenza. La condizione viene infatti valutata dopo l’esecuzione del blocco.
Questa caratteristica lo distingue dal ciclo while, nel quale la condizione viene verificata prima di eseguire il codice.
Sintassi
do {
// codice da eseguire
} while (condizione);- Il blocco
docontiene il codice da ripetere. - La
condizioneè un’espressione booleana. - Il punto e virgola finale dopo
whileè obbligatorio.
Funzionamento
Il flusso di esecuzione è il seguente:
- Il codice all’interno del blocco
doviene eseguito. - La condizione nel
whileviene valutata. - Se la condizione è
true, il ciclo riparte dal punto 1. - Se la condizione è
false, il ciclo termina.
Questo garantisce almeno un’esecuzione del blocco di codice.
Esempio base
let i = 0;
do {
console.log(i);
i++;
} while (i < 5);Output:
0
1
2
3
4Anche se i inizialmente fosse maggiore o uguale a 5, il codice all’interno del ciclo verrebbe comunque eseguito una volta.
Confronto con while
let i = 10;
while (i < 5) {
console.log(i);
}In questo caso il codice non viene mai eseguito, perché la condizione è falsa fin dall’inizio.
let i = 10;
do {
console.log(i);
} while (i < 5);Qui invece il valore 10 viene stampato una volta, perché il controllo avviene dopo l’esecuzione.
Caso d’uso comune
Il ciclo do while è particolarmente utile quando:
- è necessario eseguire almeno una volta un’operazione
- la condizione dipende da un risultato calcolato all’interno del ciclo
Esempio:
let input;
do {
input = prompt("Inserisci un numero maggiore di 0");
} while (input <= 0);Il prompt viene mostrato almeno una volta e continua a ripetersi finché l’utente non inserisce un valore valido.
Controllo del flusso
All’interno di un ciclo do while è possibile usare:
breakper interrompere immediatamente il ciclocontinueper saltare all’iterazione successiva
let i = 0;
do {
i++;
if (i === 3) continue;
if (i === 5) break;
console.log(i);
} while (i < 10);Buone pratiche
- Assicurarsi sempre che la condizione possa diventare
false, per evitare loop infiniti. - Usare
do whilesolo quando l’esecuzione iniziale è necessaria. - Preferire
whileoforquando il numero di iterazioni o la condizione iniziale è già nota.
Conclusione
Il ciclo do while è una struttura semplice ma potente, ideale nei casi in cui il codice deve essere eseguito almeno una volta prima di verificare una condizione. Un utilizzo consapevole migliora la chiarezza del codice e rende più esplicita l’intenzione logica dello sviluppatore.