Si...alors...sinon...


Utilisation de if

La syntaxe de l'instruction if prend la forme suivante :


if (expression booléenne) {
  instruction 1;
  instruction 2;
  ...
}
else {
  instruction 1;
  instruction 2;
  ...
}

Lorsque l'expression booléenne prend la valeur true, c'est le premier groupe d'instructions qui est exécuté. Dans le cas contraire, (false), c'est le deuxième groupe d'instructions, situé après le mot-clé else, qui est exécuté.

L'expression booléenne doit toujours être écrite entre des parenthèses. Les deux groupes d'instructions sont écrits entre des accolades; celles-ci peuvent être supprimées pour les groupes ne contenant qu'une seule instruction.

Le mot-clé else et le groupe d'instructions associé sont facultatifs; s'ils ne sont pas utilisés, aucune instruction n'est exécutée lorsque l'expression booléenne prend la valeur false.


Etude d'un exemple

Nous allons créer un document HTML permettant d'entrer un nombre situé entre 0 et 10. Un script devra vérifier que l'entrée fournie par l'utilisateur est bien un nombre et que celui-ci se trouve bien entre 0 et 10.

Le formulaire

Le formulaire, nommé "formu", contient simplement un texte d'invite, une zone de saisie nommée "nombre" et un bouton permettant de déclencher la vérification.

Il nous reste à écrire la fonction verif() associée au bouton.

La fonction de vérification

La vérification se fait en deux étapes :
-vérifier que c'est bien un nombre qui a été fourni
-vérifier que ce nombre est bien entre 0 et 10

On commence par récupérer le contenu de la zone d'édition dans la variable n :

var n=document.formu.nombre.value;

On utilise la fonction JavaScript isNaN pour savoir s'il s'agit bien d'un nombre. isNaN est un raccourci pour is Not a Number. La fonction isNaN renvoie donc la valeur true lorsque l'expression testée n'est pas un nombre et la valeur false lorsqu'il s'agit d'un nombre. Pour afficher un message dans le cas où l'on n'a pas un nombre, il suffira d'écrire :

if (isNaN(n)) alert("Entrer un nombre SVP !");

Si c'est bien un nombre qui a été entré par l'utilisateur, il nous reste à vérifier qu'il se trouve bien entre 0 et 10, c'est à dire qu'il est supérieur à 0 et inférieur à 10. Cela s'obtient avec l'expression booléenne :

n>=0 && n<=10

Le symbole && représente le et logique.

Finalement la fonction verif() aura la forme suivante :


Opérateur conditionnel ternaire

JavaScript fournit un opérateur permettant de simplifier une structure if...else.... Il s'agit de l'opérateur ternaire (à 3 arguments) qui prend la forme suivante :

condition?expr1:expr2

Selon la valeur de l'expression booléenne condition, l'opérateur renvoie expr1 ou expr2.

Par exemple, pour afficher un score de n point(s), il est nécessaire de savoir si n>1 pour décider de mettre un s à la fin du mot point. On pourra utiliser la formule :

alert("Vous avez "+n+(n>2?" points":" point")+".");



Retour au menu