do...while
A declaração
do...while cria um laço que executa uma declaração até que o teste da condição for falsa (false). A condição é avaliada depois que o bloco de código é executado, resultando que uma declaração seja executada pelo menos uma vez.Sintaxe
do statement while (condition);
declarações- A declaração é executada pelo menos uma vez e re-executada cada vez que a condição (
condition) for avaliada como verdadeira (true). Para executar múltiplas declarações dentro do laço, use umblockdeclaração ({ ... }) ao grupo dessas declarações.
condição- Uma expressão é validade depois de cada passagem pelo laço. Se a condição
(condition)é avaliada como verdadeira (true) o bloco de código é executado novamente. Quando a condição(condition)é avaliada como falsa (false), o controle passa para a instrução seguinte ao laço do...while.
Exemplos
Usando do...while
No exemplo seguinte, o laço do...while soma pelo menos uma vez e executa novamente até i não ser menor que 5.
Conteúdo HTML
<div id="exemplo"></div>Conteúdo JavaScript
var resultado = '';
var i = 0;
do {
i += 1;
resultado += i + ' ';
} while (i < 5);
document.getElementById('exemplo').innerHTML = resultado;Resultado
Especificações
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 3rd Edition. | Standard | Initial definition. Implemented in JavaScript 1.2 |
| ECMAScript 5.1 (ECMA-262) The definition of 'do-while statement' in that specification. |
Padrão | |
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'do-while statement' in that specification. |
Padrão | Trailing ; is now optional. |
Compatibilidade do navegador
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! (en-US)
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | IE6+ | (Yes) | (Yes) |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |