Instructions break et continue

Une boucle (créée avec for ou while ou encore do ... while) peut contenir les instructions break et continue.
Mais quel est l'intérêt d'utiliser ces instructions. En fait elles simplifient la programmation JS !

Instruction break dans une boucle

L'instruction break (toujours appelée par un test) permet une sortie anticipée de la boucle.

Exemple : trois tentatives maximales pour saisie le mot de passe. Possibilité de sortir de la boucle dès la première saisie si cette dernière est correcte.

Le script correspondant

var valide =false; var vcompteur =0; alert('pour la saisie du mot de passe vous avez droit à trois essais') ; while (vcompteur < 3) { var vmot = prompt('saisir le mot de passe') ; if(vmot=="sesame") {valide =true ; break;} vcompteur++; } if (valide) alert("vous êtes connecté!"); else alert("connexion impossible");

Commentaire

Une boucle est normalement exécutable 3 fois pour saisir le mot de passe.
Mais dès que le mot de passe saisi est valide ("sesame") valide passe à vrai et sortie de la boucle (commande break).

A vous

Testez ce code !

Seriez vous capable de produire le même programme mais cette fois construit avec une instruction do ... while ?

Rappel

L'instruction break existe aussi dans la structure switch pour sortir du test multiple après exécution d'un case.

Instruction continue dans une boucle

L'instruction continue dans une boucle permet l'arrêt de l'itération en cours et le passage à la suivante.
Comme break l'instruction continue est exécutée si un test est vérifié.

Exemple : le programme doit afficher les N premiers nombres pairs.
Donc si le reste de la division entière du nombre par 2 ne donne pas zéro il ne faut pas afficher ce nombre et passer à l'itération suivante.

Le script correspondant

var maxi =prompt("saisir un entier inférieur ou égal à 60"); maxi = parseInt(maxi); if (maxi >60) maxi =60; // la limite ne peut dépasser 60 for (var compteur = 0 ; compteur <= maxi; compteur++) { if(compteur%2 != 0) continue; document.write(compteur + " est un nombre pair ! <br>"); }

Commentaire

Notez le test : si le reste de la division entière est différent de zéro alors passage à l'itération suivante (commande continue)

A vous !

Testez ce code !

Seriez vous capable d'imaginer le code affichant les N premiers nombres impairs ???
Retour menu