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.

Syntax

while (condição) {
  rotina
}
condição
Uma expressão avaliada antes de cada passagem através do laço. Se essa condição for avaliada como verdadeira, a rotina é executada. Quando a condição for avaliada como falsa, a execução continua na declaração depois do laço while.
rotina
Uma declaração que é executada enquanto a condição é avaliada como verdadeira. Para executar multiplas declarações dentro de um laço, use uma declaração em bloco ({ ... }) para agrupar essas declarações.

Exemplos

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 da primeira passagem: n = 1 e x = 1
  • Depois da segunda passagem: n = 2 e x = 3
  • Depois da terceira passagem: n = 3 e x = 6

Depois de completar a terceira passagem, a condição n < 3 não é mais verdadeira, então o laço termina.

Especificações

Specification Status Comment
ECMAScript Latest Draft (ECMA-262)
The definition of 'while statement' in that specification.
Rascunho  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'while statement' in that specification.
Padrão  
ECMAScript 5.1 (ECMA-262)
The definition of 'while statement' in that specification.
Padrão  
ECMAScript 3rd Edition (ECMA-262)
The definition of 'while statement' in that specification.
Padrão  
ECMAScript 1st Edition (ECMA-262)
The definition of 'while statement' in that specification.
Padrão Definição inicial

Compatibilidade nos browsers

Estamos convertendo nossos dados de compatibilidade para o formato JSON. Esta tabela de compatibilidade ainda usa o formato antigo, pois ainda não convertemos os dados que ela contém. Descubra como você pode ajudar!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja Também

Etiquetas do documento e colaboradores

Etiquetas: 
Colaboradores desta página: DiegoVictor
Última atualização por: DiegoVictor,