Ciclo do while in JavaScript

Il ciclo do-while è una struttura di controllo disponibile in JavaScript che permette di eseguire un blocco di codice almeno una volta, e poi ripetere l'esecuzione finché una determinata condizione risulta vera. A differenza del ciclo while, la condizione viene valutata alla fine di ogni iterazione. La sintassi del ciclo do-while è la seguente:

do {
	// blocco di codice da eseguire
} while (condizione);

Il blocco di codice viene eseguito almeno una volta, indipendentemente dal valore iniziale della condizione. Dopo l'esecuzione del blocco di codice, la condizione viene valutata. Se la condizione risulta vera, il blocco di codice viene eseguito di nuovo. Questo processo continua fino a quando la condizione diventa falsa, momento in cui l'esecuzione del ciclo do-while termina e il controllo passa al codice successivo.

Nota: è importante prestare attenzione alla condizione per evitare loop infiniti. In particolare, bisogna aggiornare correttamente le variabili coinvolte nella condizione all'interno del blocco di codice, in modo da garantire che la condizione possa diventare falsa e che il ciclo possa terminare.

Esempio di utilizzo del ciclo do while in JavaScript

Di seguito viene riportato un esempio che utilizza il ciclo do-while per stampare i numeri da 1 a 5:

let i = 1;
do {
	console.log(i);
	i++;
} while (i <= 5);

In questo esempio, il blocco di codice viene eseguito la prima volta con i uguale a 1. Successivamente, la variabile i viene incrementata utilizzando l'operatore di incremento ++. Dopo l'esecuzione del blocco di codice, la condizione i <= 5 viene valutata. Se la condizione risulta vera, il blocco di codice viene eseguito di nuovo. Questo processo continua fino a quando i diventa 6, momento in cui la condizione diventa falsa e l'esecuzione del ciclo do-while termina.

Esempio validazione input utente con ciclo do while

Un altro esempio di utilizzo del ciclo do-while potrebbe essere la validazione dell'input dell'utente. Puoi chiedere all'utente di inserire un numero compreso tra 1 e 10 e utilizzare un ciclo do-while per assicurarti che l'input sia valido:

let numero;
do {
	numero = parseInt(prompt("Inserisci un numero da 1 a 10:"));
} while (isNaN(numero) || numero < 1 || numero > 10);

console.log("Numero valido:", numero);

In questo esempio, il blocco di codice viene eseguito almeno una volta. All'interno del blocco, l'utente viene richiesto di inserire un numero utilizzando la funzione prompt(), e questo numero viene convertito in un intero utilizzando parseInt(). La condizione del ciclo do-while verifica se l'input non è un numero (isNaN(numero)) o se il numero inserito è minore di 1 o maggiore di 10 (`numero < 1 || numero > 10). Se una di queste condizioni risulta vera, il ciclo do-while continua a richiedere all'utente di inserire un numero valido. L'esecuzione del ciclo termina solo quando l'utente fornisce un numero valido compreso tra 1 e 10.