Rappel : La structure d'exécution itérative s'utilise quand on souhaite effectuer une instruction ou une séquence d'instructions un certain nombre de fois (souvent plusieurs fois mais cela peut également être seulement une fois voir même pas du tout). Selon le type de structure itérative, le nombre de fois peut être fixé dès le départ ou bien dépendre d'une condition booléen, on arrête alors les itérations dès que la condition prend la valeur false.
Comme vous l'avez déjà vue et utilisée en Python, vous trouverez en colonne de gauche sur fond rose la syntaxe Python et en colonne de droite la syntaxe JavaScript.
Exemple en Python | Exemple en JavaScript |
---|---|
Dans le cas d'une seule instruction : | |
while (a > 0) : a=a-1 |
while (a > 0) a=a-1; |
Dans le cas d'une séquence d'instructions : | |
while (a > 0) : a=a-1 print(a) |
while (a > 0) { a=a-1; console.log(a); } |
Même dans le cas d'une seule instruction, il est conseillé d'utiliser en JavaScript les acollades et de définir ainsi une séquence d'une seule instruction. Cela sera plus facile si une seconde instruction doit être ajoutée à la séquence à itérer.
Via l'instruction break, vous pouvez sortir d'une structure itérative sans évaluer la condition de sortie ni exécuter le reste des instructions du bloc à itérer. Cette possibilité, qui ne facilite pas la relecture du code et qui est donc en général déconseillée, existe aussi bien en Python qu'en JavaScript.
Exemple en Python | Exemple en JavaScript |
---|---|
while (a > 0) : a=a-1 print(a) if (a == 3) : print("arrêt du compte à rebours") break |
while (a > 0) { a=a-1; console.log(a); if (a == 3) { console.log("arrêt du compte à rebours"); break; } } |
En langage Python, il est possible d'utiliser l'instruction "else :" derrière le bloc d'une instruction "while". Cela signifie que, lors de la sortie des itérations, si la condition booléen n'est plus vérifiée, on exécutera le bloc du "else :". C'est une écriture condencée d'un "while" suivi d'un "if" utilisant la même condition.
Exemple en Python | Exemple en JavaScript |
---|---|
while (a > 0) : a=a-1 print(a) else : print("Partez") |
|
Version non condensée en Python | Traduction en JavaScript |
while (a > 0) : a=a-1 print(a) if (a > 0) : 0 # ne rien faire else : print("Partez") |
while (a > 0) { a=a-1; console.log(a); } if (a > 0) { } else { console.log("Partez"); } |
Vous retrouverez la syntaxe complète JavaScript sur le site officiel
Le but de cette boucle est de faire varier, par pas croissant de 1, la valeur d'un compteur de boucle depuis une valeur initiale jusqu'à une valeur finale et d'exécuter le contenu de la boucle pour chaque valeur du compteur. On connait donc, dès le départ, le nombre d'itérations que l'on effectuera.
Exemple en Python | Exemple en JavaScript |
---|---|
for i in range(5,10) : print(i) |
for (i=5 ; i<10 ; i++) { console.log(i); } |
Le but de cette boucle est de faire varier, par pas décroissant de 1, la valeur d'un compteur de boucle depuis une valeur initiale jusqu'à une valeur finale et d'exécuter le contenu de la boucle pour chaque valeur du compteur. On connait donc, dès le départ, le nombre d'itérations que l'on effectuera.
Exemple en Python | Exemple en JavaScript |
---|---|
for i in range(10,5,-1) : print(i) |
for (i=10 ; i>5 ; i--) { console.log(i); } |
Vous retrouverez la syntaxe complète JavaScript sur le site officiel
JavaScript propose, comme en Python, la possibilité de parcourir, facilement, tous les éléments d'un tableau et exécuter les instructions de la boucle pour chaque valeur du tableau (que l'on aura copiées successivement dans la variable de boucle pour chaque itération).
Exemple en Python | Exemple en JavaScript |
---|---|
tableau=[1,2,3,5,7,11,13,17,19] for element in tableau : print(element) |
tableau=[1,2,3,5,7,11,13,17,19]; for (element of tableau) { console.log(element); } |
Vous retrouverez la syntaxe complète JavaScript sur le site officiel
Il est également possible de programmer le parcourt des élements d'un tableau en faisant varier une variable de boucle qui décriera les valeurs des indices du tableau en commençant par 0 et en récupérant ensuite, via cet indice, l'élément correspondant du tableau.
tableau=[1,2,3,5,7,11,13,17,19]; for (var i=0 ; i<tableau.length ; i++) { element=tableau[i]; console.log(element); }
Même si c'est d'une écriture moins simple, cela présente l'avantage de pouvoir être modifié pour faire un parcourt du dernier élement au premier, quand c'est nécessaire.
La méthode pop() permettant d'extraire le dernier élement d'un tableau, un tel type de parcourt peut s'avérer nécessaire pour traiter les éléments puis les supprimer un par un via cette méthode.
tableau=[1,2,3,5,7,11,13,17,19]; for (var i=tableau.length-1 ; i>-1 ; i--) { element=tableau[i]; console.log(element); tableau.pop(); }