--- title: while slug: Web/JavaScript/Reference/Statements/while tags: - Declaração - JavaScript translation_of: Web/JavaScript/Reference/Statements/while ---
A declaração while cria um laço que executa uma rotina especifica enquanto a condição de teste for avaliada como verdadeira. A condição é avaliada antes da execução da rotina.
while (condição) {
rotina
}
condição while.{ ... }) para agrupar essas declarações.O seguinte laço while itera enquanto n é menor que três.
var n = 0;
var x = 0;
while (n < 3) {
n++;
x += n;
}
Cada iteração, o laço incrementa n e soma à x. Portanto, x e n assumem os seguintes valores:
Depois de completar a terceira passagem, a condição n < 3 não é mais verdadeira, então o laço termina.
| Specification | Status | Comment |
|---|---|---|
| {{SpecName('ESDraft', '#sec-while-statement', 'while statement')}} | {{Spec2('ESDraft')}} | |
| {{SpecName('ES6', '#sec-while-statement', 'while statement')}} | {{Spec2('ES6')}} | |
| {{SpecName('ES5.1', '#sec-12.6.2', 'while statement')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES3', '#sec-12.6.2', 'while statement')}} | {{Spec2('ES3')}} | |
| {{SpecName('ES1', '#sec-12.6.1', 'while statement')}} | {{Spec2('ES1')}} | Definição inicial |
{{CompatibilityTable}}
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Suporte básico | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Suporte básico | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
do...while