L'instruction do...while crée une boucle qui exécute une instruction jusqu'à ce qu'une condition de test ne soit plus vérifiée. La condition est testée après que l'instruction soit exécutée, l'instruction définie dans la boucle est donc exécutée au moins une fois.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
Syntaxe
do instruction while (condition);
instruction- Une instruction exécutée au moins une fois et ré-exécutée chaque fois que la condition de test est évaluée à
true. On peut exécuter plusieurs instructions au sein d'une boucle grâce à l'instructionblock({ ... }) qui permet de grouper différentes instructions en une seule.
condition- Une expression évaluée après chaque passage dans la boucle. Si l'évaluation de la
conditiondonnetrue(la condition est vérifiée),instructionsera exécutée à nouveau. Lorsqueconditiondonnefalse, le contrôle passe à l'instruction suivant la boucledo...while.
Exemples
Utiliser do...while
Dans l'exemple suivant, la boucle do...while est parcourue au moins une fois et répétée jusqu'à ce que i ne soit plus strictement inférieur à 5.
var i = 0;
do {
i += 1;
console.log(i);
} while (i < 5);
Spécifications
| Spécification | État | Commentaires |
|---|---|---|
| ECMAScript 3rd Edition (ECMA-262) | Standard | Définition initiale. Implémentée avec JavaScript 1.2 |
| ECMAScript 5.1 (ECMA-262) La définition de 'instruction do-while' dans cette spécification. |
Standard | |
| ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'instruction do-while' dans cette spécification. |
Standard | Le point-virgule de fin est désormais optionnel. |
| ECMAScript Latest Draft (ECMA-262) La définition de 'instruction do-while' dans cette spécification. |
Projet |
Compatibilité des navigateurs
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Ordinateur | Mobile | Serveur | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
do...while | Chrome Support complet Oui | Edge Support complet Oui | Firefox Support complet 1 | IE Support complet 6 | Opera Support complet Oui | Safari Support complet Oui | WebView Android Support complet Oui | Chrome Android Support complet Oui | Firefox Android Support complet 4 | Opera Android Support complet Oui | Safari iOS Support complet Oui | Samsung Internet Android Support complet Oui | nodejs Support complet Oui |
Légende
- Support complet
- Support complet

