Neste tutorial, você aprenderá sobre o loop while e fará … loop while com a ajuda de exemplos.
Na programação, os loops são usados para repetir um bloco de código. Por exemplo, se você quiser mostrar uma mensagem 100 vezes, poderá usar um loop. É apenas um exemplo simples; você pode conseguir muito mais com loops.
No tutorial anterior, você aprendeu sobre o loop for de JavaScript. Aqui, você está indo para aprender sobre whilee do… whileloops.
JavaScript while Loop
A sintaxe do whileloop é:
 while (condition) ( // body of loop )
Aqui,
- Um whileloop avalia a condição entre parênteses().
- Se a condição for avaliada como true, o código dentro dowhileloop será executado.
- A condição é avaliada novamente.
- Este processo continua até que a condição seja false.
- Quando a condição é avaliada como false, o loop para.
Para saber mais sobre as condições , visite Comparação de JavaScript e operadores lógicos.
Fluxograma do loop while
 Fluxograma de JavaScript while loop
 Fluxograma de JavaScript while loop
Exemplo 1: números de exibição de 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; )
Resultado
1 2 3 4 5
Veja como funciona este programa.
| Iteração | Variável | Condição: i <= n | Açao | 
|---|---|---|---|
| 1ª | i = 1n = 5 | true | 1 é impresso. i é aumentado para 2 . | 
| 2ª | i = 2n = 5 | true | 2 é impresso. i é aumentado para 3 . | 
| 3ª | i = 3n = 5 | true | 3 é impresso. i é aumentado para 4 . | 
| 4º | i = 4n = 5 | true | 4 é impresso. i é aumentado para 5 . | 
| 5 ª | i = 5n = 5 | true | 5 é impresso. i é aumentado para 6 . | 
| 6º | i = 6n = 5 | false | O loop é encerrado | 
Exemplo 2: apenas soma de números positivos
 // 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).`);
Resultado
Insira um número: 2 Insira um número: 5 Insira um número: 7 Insira um número: 0 Insira um número: -3 A soma é 14.
No programa acima, o usuário é solicitado a inserir um número.
Aqui, parseInt()é usado porque prompt()recebe a entrada do usuário como uma string. E quando strings numéricas são adicionadas, ele se comporta como uma string. Por exemplo '2' + '3' = '23',. Portanto, parseInt()converte uma string numérica em número.
O whileloop continua até que o usuário insira um número negativo. Durante cada iteração, o número inserido pelo usuário é adicionado à sumvariável.
Quando o usuário insere um número negativo, o loop termina. Finalmente, a soma total é exibida.
JavaScript faz … while Loop
A sintaxe do do… whileloop é:
 do ( // body of loop ) while(condition)
Aqui,
- O corpo do loop é executado primeiro. Em seguida, a condição é avaliada.
- Se a condição for avaliada como true, o corpo do loop dentro dadoinstrução será executado novamente.
- A condição é avaliada mais uma vez.
- Se a condição for avaliada como true, o corpo do loop dentro dadoinstrução será executado novamente.
- Esse processo continua até que a condição seja avaliada como false. Em seguida, o loop para.
Nota : o do… whileloop é semelhante ao whileloop. A única diferença é que no do… whileloop, o corpo do loop é executado pelo menos uma vez.
Fluxograma de do … while Loop
 Fluxograma de JavaScript do … while loop
 Fluxograma de JavaScript do … while loop
Vamos ver o funcionamento do do… whileloop.
Exemplo 3: números de exibição de 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);
Resultado
1 2 3 4 5
Veja como funciona este programa.
| Iteração | Variável | Condição: i <= n | Açao | 
|---|---|---|---|
| i = 1n = 5 | não checado | 1 é impresso. i é aumentado para 2 . | |
| 1ª | i = 2n = 5 | true | 2 é impresso. i é aumentado para 3 . | 
| 2ª | i = 3n = 5 | true | 3 é impresso. i é aumentado para 4 . | 
| 3ª | i = 4n = 5 | true | 4 é impresso. i é aumentado para 5 . | 
| 4º | i = 5n = 5 | true | 6 é impresso. i é aumentado para 6 . | 
| 5 ª | i = 6n = 5 | false | O loop é encerrado | 
Exemplo 4: Soma de números positivos
 // 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).`);
Produto 1
Insira um número: 2 Insira um número: 4 Insira um número: -500 A soma é 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 )
Os loops And whilee do… whilesão geralmente usados quando o número de iterações é desconhecido. Por exemplo,
 while (condition) ( // body of loop )








