In questo tutorial imparerai a eseguire il ciclo while e fare … il ciclo while con l'aiuto di esempi.
Nella programmazione, i loop vengono utilizzati per ripetere un blocco di codice. Ad esempio, se vuoi mostrare un messaggio 100 volte, puoi usare un ciclo. È solo un semplice esempio; puoi ottenere molto di più con i loop.
Nel tutorial precedente, hai imparato a conoscere il ciclo JavaScript for. Qui, si sta andando a conoscere whilee do… whileloop.
JavaScript while Loop
La sintassi del whileciclo è:
while (condition) ( // body of loop )
Qui,
- Un
whileciclo valuta la condizione all'interno delle parentesi(). - Se la condizione restituisce
true,whileviene eseguito il codice all'interno del ciclo. - La condizione viene valutata di nuovo.
- Questo processo continua fino a quando la condizione è
false. - Quando la condizione restituisce
false, il ciclo si interrompe.
Per ulteriori informazioni sulle condizioni , visitare Confronto JavaScript e operatori logici.
Diagramma di flusso del ciclo while
Diagramma di flusso di JavaScript while loop
Esempio 1: visualizzare i numeri da 1 a 5
// program to display numbers from 1 to 5 // initialize the variable let i = 1, n = 5; // while loop from i = 1 to 5 while (i <= n) ( console.log(i); i += 1; )
Produzione
1 2 3 4 5
Ecco come funziona questo programma.
| Iterazione | Variabile | Condizione: i <= n | Azione |
|---|---|---|---|
| 1 ° | i = 1n = 5 | true | 1 viene stampato. i è aumentato a 2 . |
| 2 ° | i = 2n = 5 | true | 2 viene stampato. i è aumentato a 3 . |
| 3 ° | i = 3n = 5 | true | 3 viene stampato. i è aumentato a 4 . |
| 4 ° | i = 4n = 5 | true | 4 viene stampato. i è aumentato a 5 . |
| 5 ° | i = 5n = 5 | true | 5 viene stampato. i è aumentato a 6 . |
| 6 ° | i = 6n = 5 | false | Il ciclo è terminato |
Esempio 2: solo somma di numeri positivi
// program to find the sum of positive numbers // if the user enters a negative numbers, the loop ends // the negative number entered is not added to sum let sum = 0; // take input from the user let number = parseInt(prompt('Enter a number: ')); while(number>= 0) ( // add all positive numbers sum += number; // take input again if the number is positive number = parseInt(prompt('Enter a number: ')); ) // display the sum console.log(`The sum is $(sum).`);
Produzione
Immettere un numero: 2 Immettere un numero: 5 Immettere un numero: 7 Immettere un numero: 0 Immettere un numero: -3 La somma è 14.
Nel programma sopra, all'utente viene richiesto di inserire un numero.
Qui, parseInt()viene utilizzato perché prompt()prende l'input dall'utente come una stringa. E quando vengono aggiunte stringhe numeriche, si comporta come una stringa. Ad esempio '2' + '3' = '23',. Quindi parseInt()converte una stringa numerica in numero.
Il whileciclo continua fino a quando l'utente non immette un numero negativo. Durante ogni iterazione, il numero inserito dall'utente viene aggiunto alla sumvariabile.
Quando l'utente immette un numero negativo, il ciclo termina. Infine, viene visualizzata la somma totale.
JavaScript fa … mentre Loop
La sintassi del do… whileloop è:
do ( // body of loop ) while(condition)
Qui,
- Il corpo del ciclo viene eseguito inizialmente. Quindi la condizione viene valutata.
- Se la condizione restituisce
true, il corpo del ciclo all'internododell'istruzione viene eseguito di nuovo. - La condizione viene valutata ancora una volta.
- Se la condizione restituisce
true, il corpo del ciclo all'internododell'istruzione viene eseguito di nuovo. - Questo processo continua finché la condizione non viene valutata
false. Quindi il ciclo si ferma.
Nota : il do… whileciclo è simile al whileciclo. L'unica differenza è che in do… whileloop, il corpo del loop viene eseguito almeno una volta.
Diagramma di flusso di do … while Loop
Diagramma di flusso di JavaScript do … while loop
Vediamo il funzionamento del do… whileloop.
Esempio 3: visualizzare i numeri da 1 a 5
// program to display numbers let i = 1; const n = 5; // do… while loop from 1 to 5 do ( console.log(i); i++; ) while(i <= n);
Produzione
1 2 3 4 5
Ecco come funziona questo programma.
| Iterazione | Variabile | Condizione: i <= n | Azione |
|---|---|---|---|
i = 1n = 5 | non controllato | 1 viene stampato. i è aumentato a 2 . | |
| 1 ° | i = 2n = 5 | true | 2 viene stampato. i è aumentato a 3 . |
| 2 ° | i = 3n = 5 | true | 3 viene stampato. i è aumentato a 4 . |
| 3 ° | i = 4n = 5 | true | 4 viene stampato. i è aumentato a 5 . |
| 4 ° | i = 5n = 5 | true | 6 viene stampato. i è aumentato a 6 . |
| 5 ° | i = 6n = 5 | false | Il ciclo è terminato |
Esempio 4: somma di numeri positivi
// to find the sum of positive numbers // if the user enters negative number, the loop terminates // negative number is not added to sum let sum = 0; let number = 0; do ( sum += number; number = parseInt(prompt('Enter a number: ')); ) while(number>= 0) console.log(`The sum is $(sum).`);
Uscita 1
Immettere un numero: 2 Immettere un numero: 4 Immettere un numero: -500 La somma è 6.
Here, the do… while loop continues until the user enters a negative number. When the number is negative, the loop terminates; the negative number is not added to the sum variable.
Output 2
Enter a number: -80 The sum is 0.
The body of the do… while loop runs only once if the user enters a negative number.
Infinite while Loop
If the condition of a loop is always true, the loop runs for infinite times (until the memory is full). For example,
// infinite while loop while(true)( // body of loop )
Here is an example of an infinite do… while loop.
// infinite do… while loop const count = 1; do ( // body of loop ) while(count == 1)
In the above programs, the condition is always true. Hence, the loop body will run for infinite times.
for Vs while Loop
A for loop is usually used when the number of iterations is known. For example,
// this loop is iterated 5 times for (let i = 1; i <=5; ++i) ( // body of loop )
E i cicli whilee do… whilevengono solitamente utilizzati quando il numero di iterazioni è sconosciuto. Per esempio,
while (condition) ( // body of loop )








