do. . . while
Exécute un bloc de code au moins une fois, puis le répète tant que la condition est vraie.
Exemple
#let attempts = 0
do {
attempts++
console.log(`Tentative ${attempts}`)
} while (attempts < 3)Définition et utilisation
#La boucle do...while fonctionne comme while, mais elle ne vérifie la condition qu’après avoir exécuté le bloc. Le code à l’intérieur s’exécute donc toujours au moins une fois, même si la condition est fausse dès le départ.
C’est un choix naturel quand il faut d’abord faire quelque chose, puis seulement évaluer le résultat : générer une valeur et vérifier qu’elle convient, interroger l’utilisateur et répéter la question en cas de mauvaise réponse, ou récupérer un premier lot de données.
Les variables déclarées avec let ou const à l’intérieur du bloc ne sont pas visibles dans la condition. Ce que vous vérifiez dans while (...) doit être déclaré avant la boucle.
Syntaxe
#do {
// instructions
} while (condition)Plus d’exemples
#let lives = 0
do {
console.log('Début de la partie, vies :', lives)
} while (lives > 0)
while (lives > 0) {
console.log('Ceci ne s’affichera pas')
}const taken = ['A1', 'A2', 'A3']
let number = 0
let code
do {
number++
code = `A${number}`
} while (taken.includes(code))
console.log(code)Compatibilité des navigateurs
#Largement disponible
Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.
- Chrome
- Edge
- Firefox
- Safari
Bonnes pratiques
#- Déclarez la variable utilisée dans la condition avant
do, car le bloc de la boucle a sa propre portée. - Vous rencontrerez
do...whilemoins souvent quewhileoufor. Utilisez-le quand « au moins une fois » découle vraiment de la logique du programme.
Entrées associées
#- whileRépète un bloc de code tant que la condition est vraie. La condition est vérifiée avant chaque tour.
- forUne boucle avec compteur : initialisation, condition et étape. Répète un bloc de code tant que la condition est vraie.
- breakTermine immédiatement une boucle ou une instruction switch et passe au code qui la suit.
- continueIgnore le reste du tour de boucle actuel et passe immédiatement au suivant.
Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.