Les structures de contrôle


Cette page reprend toutes les instructions pour les boucles, les conditions, ...

break Permet de quitter la boucle while, for ou un switch et donne le contrôle aux instructions suivant les boucles
Syntaxe : break [label]
Paramètre : label : Identifie un label
ex.:
i = 0
while (i < 10){
  if (i == 3) break;
  i++;
}
//le programme continue ici après le break
continue, label, switch
comment Les commentaires sont du texte mis par l'auteur. Ils sont ignorés par l'interpréteur.
// commentaire sur une ligne

/* commentaire
sur plusieurs
lignes */

continue Termine l'exécution du bloc d'une boucle while ou for et continue l'exécution à la prochaine itération.
Syntaxe : continue [label]
Paramètre : label : Identifie un label
ex.:
i = 0;
while (i < 4){
  i++;
  if (i==2) continue;
  document.write(i + " - ");
}
Cela donne : 1 - 3 - 4 -
break, label
do...while Exécute les instructions tant que la condition de fin est false. Les instructions sont exécutées au moins 1 fois.
Syntaxe :
do{
  code
}while (condition);
Paramètre : condition : la condition de sortie de la boucle.
ex.:
i=0;
do{
  i++;
  document.write(i);
} while (i<10);
for Crée une boucle qui exécute le code x fois. Attention aux boucles infinies : faites attention aux conditions de sortie.
for( ; ; ) est une boucle infinie.

Syntaxe :
for ([valeur initiale] ; [condition] ; [incrément]) {
  code
}
Paramètre :
  • valeur initiale : valeur initiale de la variable compteur.
  • condition : condition de sortie de la boucle.
  • incrément : pour incrémenter ou décrémenter le compteur.

ex.:
for(i = 0 ; i < 10 ; i++){
  document.write(i);
}
Cela donne : 0123456789
ex.:
for(i = 0 ,j = 0; i < 10, j < 5 ; i++, j++){
  document.write(i);
}
Cela donne : 01234

for...in Exécute une boucle avec une variable sur les propriétés d'un objet.
Syntaxe :
for (variable dans l'objet) {
  code
}
Paramètres :
  • variable : variable qui contiendra chaques propriétés de l'objet.
  • objet : un objet.

ex.:
var result = ""
var jours = new Array("Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche");
for (var i in jours) {
  result += "jours." + i + " = " + jours[i] + "\n"
}
document.write(result);
Cela donne :
jours.0 = Lundi jours.1 = Mardi jours.2 = Mercredi jours.3 = Jeudi jours.4 = Vendredi jours.5 = Samedi jours.6 = Dimanche

function Déclare une fonction avec ou sans paramètres. Les paramètres peuvent être des string, des nombres ou des objets.
Syntaxe :
function nom([param1] [,param2] [..., paramN]) {
  code
}
ex.:
function carre(x) {
  return x * x;
}
if...else Exécute des instructions si la condition est true, sinon exécute d'autres instructions.
Syntaxe :
if (condition) {
  code
}[ else {
  code
}]
ex.:
if (x > 3) {
  y += 2
}
label Fournit un endroit dans le code qui peut être référencé ailleurs dans le code.
Syntaxe :
  label :
    nom_label
break, continue
return Spécifie la valeur de retour d'une fonction.
Syntaxe : return expression
Paramètre : expression : l'expression à renvoyer.
ex.:
function carre(x) {
  return x * x;  //renvoie le carré de x
}
switch Permet au programme d'évaluer une expression et de la comparer à une valeur d'un "case label".
Syntaxe :
  switch (expression) {
    case label :
      code;
      break;
    case label :
      code;
      break;
    ...
    default : code;
  }
Le break  est obligatoire afin de permettre à l'interpréteur de savoir où se trouve la fin du code d'un "case".
ex.:
switch (langue) {
  case "français" :
    document.write("Bonjour");
    break;
  case "english" :
    document.write("Hello");
    break;
  default : document.write("Another language");
}
throw Lance une exception définie par l'utilisateur.
Une exception est une erreur d'exécution détectée par le programme et lancée par celui-ci.
Syntaxe : trhow epression
Paramètre : expression : la valeur à lancer
ex.:
function Exception( message) {
  this.message = message
  this.nom = "Exception utilisateur"
}
function nomJours(n) {
  var jours = new Array("Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi")
  if (n != null) {
    return jours[n]
  } else {
    monException = new Exception("Jours invalide")
    throw monException
  }
}

try {
  jours = nomJours(n)
}
catch (e) {
  jours = "Inconnu"
  document.write(e.message + " - " + e.nom)
}

try...catch Marque un bloque d'instructions à exécuter avec try. Si une exception est lancée, elle est récupérée dans le bloque catch.
Syntaxe :
try {
  code
}
[catch (nom) {
  code
}]
[finally {
  code
}]
Paramètres :
  • nom : nom de l'exception à traiter
  • finally : ce bloque d'instructions est exécuté qu'il y ait eu où non une exception.
var Déclare une variable et l'initialise à une valeur.
Syntaxe : var nom [= valeur] [..., nom [=valeur]]
ex.:
var a = 1, b = "bonjour"
while Crée une boucle qui répète l'exécution du code tant que la condition est vraie. Si la condition est vraie dès le début, le programme n'entre pas dans la boucle.
Syntaxe :
while (condition) {
  code
}
with Indique l'objet sur lequelle on veut travailler pour un bloque d'instructions.
Syntaxe :
with (objet) {
  code
}
Paramètre : objet : objet sur lequel on veut travailler.
ex.:
with (Math) {
  a = PI * 2;
// au lieu de Math.PI * 2
  b = cos(45);
}

Les boucles infinies

  1. while (true) { ... }
  2. for ( ; ; ) { ... }

Il faut faire attention à ces boucles car elle peuvent geler votre navigateur. Il est déconseillé d'en faire.
Voici le message que vous aurez si vous utilisez une telle boucle :

boucle infinie

Pour quitter d'une telle boucle, vous devez utiliser l'instruction "break".

Retour au début de la page

 

Les bases du JavaScript

Les bases du JavaScript : Les opérateursRetour à la page JavaScriptLes bases du JavaScript : Fonctions et propriétés de haut niveau