--- title: do...while slug: Web/JavaScript/Reference/Statements/do...while translation_of: Web/JavaScript/Reference/Statements/do...while original_slug: Web/JavaScript/Referencia/Sentencies/do...while ---
{{jsSidebar("Statements")}}

La sentència do...while crea un bucle que executa una sentència especificada fins que la condició avalui a fals. La condició s'avalua després de la sentència, donant lloc a l'execució de la sentència especificada almenys un cop.

Sintaxi

do
   sentència
while (condició);
sentència
Una sentència que s'executa almenys un cop i que es torna a executar cada cop que la condició avalui a certa. Per executar múltiples sentències dins d'un bucle, utilitzeu una sentència {{jsxref("Statements/block", "block")}} ({ ... }) per agrupar aquestes sentències.
condició
Una expressió que s'avalua després de cada volta del bucle. si condició avalua a certa, la sentència es torna a executar. Quan la condició avalua a falç, control passa a la següent sentència que segueix el do...while.

Exemples

Utilitzar el do...while

En l'exemple següent, el bucle do...while itera almenys un cop i torna a iterar fins que i deixa de ser més petit que 5.

var i = 0;
do {
   i += 1;
   console.log(i);
} while (i < 5);

Especificacions

Especificació Estat Comentaris
{{SpecName('ES3')}} {{Spec2('ES3')}} Definició inicial. Implementat en JavaScript 1.2
{{SpecName('ES5.1', '#sec-12.6.1', 'do-while statement')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-do-while-statement', 'do-while statement')}} {{Spec2('ES6')}} Trailing ; ara és opcional.

Browser compatibility

{{CompatibilityTable}}

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suport bàsic {{CompatVersionUnknown}} {{CompatVersionUnknown}} 6 {{CompatVersionUnknown}} {{CompatVersionUnknown}}
Característica Android Chrome per Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suport bàsic {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}

Vegeu també