[[web:javascript|{{ :iconemaison.jpg?nolink&25|Accueil JavaScript}}]]
===== JavaScript - Les boucles =====
[Mise à jour le 21/6/2021]
* **Sources** et compléments sur **MDN Web Docs**
* Boucles et itérations
* ** Lectures connexes**
* Wikis WebPEM : [[:outils:vscode:web|"Préparer un projet de site Web avec l'IDE VSCode"]]
----
==== 1. Introduction ====
En programmation, une boucle est un traitement répété plusieurs fois grâce à un bloc d'instructions codé une seule fois.
Il existe de type de structures de boucles :
* La boucle **for** déclenche une boucle avec un compteur de passage.
* La boucle **while** répète la boucle tant qu'une condition est vraie.
==== 2. La boucle for ====
La boucle for permet de traiter les éléments d'un ensemble dont on connaît à l'avance l'ensemble des occurrences.
// Syntaxe //
for (initialisation compteur; condition sur compteur; incrément compteur) {
// Traitements répétés dans la boucle
}
// Exemple //
// Calcul de la somme des valeurs de 1 à n
var somme = 0, n = 45;
for (i = 0; i <= n; i++) {
somme += i;
}
console.log("Somme=" + somme + " pour n=" + n); // Affiche Somme=1035 pour n=455
// Interrompre la boucle avant la fin prévue//
Il est possible d'arrêter une boucle //for// avant la fin prévue par le test de condition en utilisant l'instruction //**break**//. La boucle s'interrompt et le script se poursuit après le bloc d'instructions //for// {...}
==== 3. La boucle while ====
La boucle while (tant que) est exécutée tant que sa condition est vraie.
// Syntaxe //
while (condition) {
// Traitements répétés dans la boucle
}
// Exemple //
// Recherche de la valeur de n tel que la somme de 1 à n soit supérieure à 1000
var somme = 0, n = 0;
while (somme < 1000) {
n++;
somme += n;
}
console.log("Somme=" + somme + " pour n=" + n); // Affiche Somme=1035 pour n=45
==== 4. La boucle do ... while ====
Dans la boucle do ... while, un premier passage s'effectue systématiquement dans le bloc d'instructions.
// Syntaxe //
do {
// Traitements répétés dans la boucle
} while (condition);
// Exemple //
// Recherche de la valeur de n tel que la somme de 1 à n soit supérieure à 1000
var somme = 0, n = 0;
do {
n++;
somme += n;
} while (somme < 1000)
console.log("Somme=" + somme + " pour n=" + n); // Affiche Somme=1035 pour n=45