JavaScript, leçon n°6 :
Les structures de contrôles :
Dans ce chapitre nous allons traiter des éléments très importants en programmation c'est le traitement de conditions de toutes formes que ce soit une conditions simple, multiple, ou boucles conditionnelles . Ces éléments sont très important et même peut-être les éléments les plus important en une programmation structurée . Pour l'utilisation de ces éléments, nous serons obligé d'étudier d'autres opérateurs . Ces opérateurs sont indispensables pour le traitement conditionnelle, nous les verrons donc en priorité .
Opérateurs de comparaison :
Ces opérateurs se ressemblent en syntaxe à des opérateurs mathématiques comme «supérieur à» . Si la condition est vrai, la valeur true est renvoyé et si la condition n'est pas vérifié alors false est renvoyé . Au lieu de parler ! Présentons ces opérateurs :
< cette opérateur est identique à l'opérateur mathématique qui signifie inférieur à . Cette opérateur sert à vérifier si une variable est inférieur à un nombre ou une autre variable .
<= cette opérateur est identique à l'opérateur < sauf qu'il traite aussi le cas d'égalité .
> cette opérateur signifie supérieur à, il traitera si une variable est supérieur à un chiffre ou une variable .
>= cette opérateur veut dire supérieur ou égal à, il sert à traiter si une variable est supérieur ou égale à un nombre ou une autre variable .
== cette opérateur sert à traiter si une variable vaut un nombre ou si elle est égale à une autre variable . Attention car il ne faut pas confondre cette opérateur de comparaison (==) avec l'opérateur d'affectation (=)
!= cette opérateur sert à vérifier si une variable est différente d'une autre ou d'un nombre .
Opérateurs logiques :
Ces opérateurs ont pour but de tester plusieurs conditions avec les opérateurs de comparaisons . Il en existe trois mais que deux de vraiment utile et unique, donc nous verrons que ces deux opérateurs importants, les voici :
&& cette opérateur sert à ajouter une autre condition dans une condition entres guillemets général, par exemple :
if (mo > 10 && mo < 50)
Pour l'instruction if nous verrons ça un peu plus tard mais sinon en gros, cette instruction sert à vérifier si la variable mo est supérieur à 10 et inférieur à 50 .
|| cette opérateur sert à vérifier plusieurs conditions si l'une ou l'autre est vraie . C'est opérateur est prénommé le "ou inclusif" . Ce sont deux barres verticales qui compose cette opérateur . Voici un petit exemple :
if (mo > 10 || mo == 3)
Cette instruction sera vrai si la variable mo est supérieure à 10 ou si la variable mo est égale à 3 .
L'opérateur d'affectation ternaire :
Avant de voir l'instruction if nous allons voir une instruction qui ressemble un peu à celle-là, elle permet de vérifier une condition et selon que la condition est vraie ou fausse un résultat est affecté à une autre variable . Voici un exemple :
<HTML>
<HEAD>
<TITLE>Exemple n°001, L'opérateur d'affectation ternaire</TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
note = 12
commentaire = ""
commentaire = note > 10 ? "C'est bien vous avez au moin eut la moyenne" : "Des effort étaient attendus"
document.write("La note est de "+note+" et l'appréciation est donc : "+commentaire)
</SCRIPT>
</BODY>
</HTML>
La seule ligne intéressante dans ce script est celle qui suit l'affectation et la déclaration de la variable commentaire . Il y a une variable qui prendra un résultat selon la condition est vraie ou fausse suivie d'un opérateur d'affectation et ensuite il y a une condition avec un opérateur de comparaison . Si la condition est vraie alors la variable de départ sera affecté de la valeur qui suit le caractère ? sinon c'est la valeur qui suit le caractère : qui est affecté à la variable de départ . Voici ce qu'affiche le script :

L'instruction if() :
Cette instruction a été brièvement utilisé et comme vous devez vous en douter, elle sert à vérifier une condition ou plusieurs conditions grâce aux opérateurs de comparaisons et aux opérateurs logiques . Le corps de la condition est entre accolades comme pour les fonctions . Voici un exemple :
if (po == 5)
{
document.write("Voilà cela s'affiche grâce à la condition")
}
Ici, la variable po est testée pour voir si elle est égale à 5 et si c'est le cas alors le corps de la condition est exécuté c'est-à-dire que la chaîne de caractères est affiché à l'écran ici . On peut tester plusieurs condition comme voici :
if (po == 5 || po == 10)
{
document.write("Voilà cela s'affiche grâce à la condition")
}
Ici la variable po est testée et si elle est égale à 5 ou 10 alors le corps de la condition est exécuté .
else :
Cette instruction sert à traiter le cas où la condition if n'a pas été réalisé . Elle suit l'accolade fermante du if . Elle a elle-même des accolades aussi . Voici un exemple :
if (jeu == 1)
{
document.write("Voilà la variable est égale à 1 !!")
}
else
{
document.write("Je ne sais pas combien fait la variable mais elle ne fait pas 1 !!")
}
Cette condition est simple : si la variable jeu est égale à 1 alors le code qui est entre les deux premières accolades est exécuté sinon c'est le code qui est entre les accolades après le else .
switch() :
Cette instruction est aussi une instruction conditionnelle mais qui sert à traiter un variable selon plusieurs résultats qu'elle peut avoir, par exemple :
<HTML>
<HEAD>
<TITLE>Exemple n°002, switch()</TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
compte = 5
switch(compte)
{
case 1 :
nom = "Joe"
argent = 1236
break
case 2 :
nom = "Marc"
argent = -126
break
case 3 :
nom = "Fabien"
argent = 123612
break
case 4 :
nom = "Matthieu"
argent = -1236
break
case 5 :
nom = "Jimmy"
argent = 803,56
break
case 6 :
nom = "Kévin"
argent = 16
break
}
document.write("Vous êtes connecté sur le compte n°"+compte+" qui est à "+nom+" et qui a la somme de "+argent+" euros .")
</SCRIPT>
</BODY>
</HTML>
Après le switch il y a la variable qui sera testé entre parenthèses . Ensuite le total du traitement conditionnelle est entre accolades . Dans ces accolades après cela se complique . On voit plusieurs fois le mot-clé case ici et bien nous retiendrons qu'ici la valeur qui suit ce case est la valeur à tester . Si la variable est égale à cette valeur alors ce qu'il y a entre les deux-points après le case jusqu'à l'instruction break est exécuté . Ce teste est fait à chaque instruction case . Voici deux exemple d'exécution du script :

while() :
Après avoir traité les conditions dans un programme nous allons traiter les boucles conditionnelles . Ces boucles servent à éviter de répéter des instructions qui se ressemblent avec différentes valeurs . Ici la boucle prends une condition entre parenthèses et si cette condition est vrai (true) alors le contenu de la boucle est exécuté . Voici un exemple :
<HTML>
<HEAD>
<TITLE>Exemple n°003, while()</TITLE>
</HEAD>
<BODY>
<B>Voici tous les comptes de la banque :</B><BR><BR>
<SCRIPT LANGUAGE="JavaScript">
compte = 1
while(compte <= 6)
{
switch(compte)
{
case 1 :
nom = "Joe"
argent = 1236
break
case 2 :
nom = "Marc"
argent = -126
break
case 3 :
nom = "Fabien"
argent = 123612
break
case 4 :
nom = "Matthieu"
argent = -1236
break
case 5 :
nom = "Jimmy"
argent = 803,56
break
case 6 :
nom = "Kévin"
argent = 16
break
}
document.write("Le compte n°"+compte+" qui est à "+nom+" a la somme de "+argent+" euros .<BR>")
++compte
}
</SCRIPT>
</BODY>
</HTML>
Dans ce script il y a donc l'instruction while() avec pour condition que la variable compte soit inférieur ou égale à 6 . Le contenu de la boucle est entre accolades, ainsi les paramètre du premier compte est affiché puis on augmente la variable compte de 1 de façon à passer à l'autre compte lors de la seconde boucle . Cette opération est effectué autant de fois que la condition de la boucle est vraie . Il faut faire très attention à éviter des boucles infini dans vos scripts en vérifiant que la boucle puisse être quitter à un moment ou un autre . Voici l'affichage de ce script :

do :
Ce mot-clé sert à produire une boucle identique à while() sauf que la condition est effectué à la fin du contenu de la boucle ce qui fait que les instructions de la boucle seront au moins exécuté une fois . Voici la syntaxe :
do
{
}while(condition)
for() :
Cette boucle, on peut s'en passer car on peut arriver au même résultat avec while() mais elle est plus rapide . Elle sert en fait à déclarer une variable, faire le teste et modifier cette variable . Voici le même exemple que le 3 mais utilisé avec cette nouvelle boucle :
<HTML>
<HEAD>
<TITLE>Exemple n°004, for()</TITLE>
</HEAD>
<BODY>
<B>Voici tous les comptes de la banque :</B><BR><BR>
<SCRIPT LANGUAGE="JavaScript">
for(compte = 1; compte <= 6; ++compte)
{
switch(compte)
{
case 1 :
nom = "Joe"
argent = 1236
break
case 2 :
nom = "Marc"
argent = -126
break
case 3 :
nom = "Fabien"
argent = 123612
break
case 4 :
nom = "Matthieu"
argent = -1236
break
case 5 :
nom = "Jimmy"
argent = 803,56
break
case 6 :
nom = "Kévin"
argent = 16
break
}
document.write("Le compte n°"+compte+" qui est à "+nom+" a la somme de "+argent+" euros .<BR>")
}
</SCRIPT>
</BODY>
</HTML>
Comme vous pouvez le voir, cette boucle sert donc à déclarer une variable puis de mettre le teste conditionnelle de la boucle et enfin d'ajouter 1 à la variable compte . Chacun de ces trois arguments séparés par un point virgule . Voici l'affichage de cette exemple :

break :
On a déjà vu ce mot-clé avec switch() et bien il sert à quitter la boucle dès son exécution de façon à aller à la première instruction juste après la boucle .
continue :
Ce mot-clé ressemble un peu à break sauf qu'il permet, dans une boucle d'aller directement au teste de la boucle de façon à sauter les instructions entre cette instruction et jusqu'à l'accolade fermante . Voici un exemple :
<HTML>
<HEAD>
<TITLE>Exemple n°005, continue</TITLE>
</HEAD>
<BODY>
<B>Voici tous les comptes de la banque :</B><BR><BR>
<SCRIPT LANGUAGE="JavaScript">
for(compte = 1; compte <= 6; ++compte)
{
switch(compte)
{
case 1 :
nom = "Joe"
argent = 1236
break
case 2 :
nom = "Marc"
argent = -126
break
case 3 :
nom = "Fabien"
argent = 123612
break
case 4 :
nom = "Matthieu"
argent = -1236
break
case 5 :
nom = "Jimmy"
argent = 803,56
break
case 6 :
nom = "Kévin"
argent = 16
break
}
if (compte == 2)
{
continue
}
document.write("Le compte n°"+compte+" qui est à "+nom+" a la somme de "+argent+" euros .<BR>")
}
</SCRIPT>
</BODY>
</HTML>
Vous voyez donc ici l'utilisation de cette instruction qui aura pour effet ici de ne pas afficher le contenu du compte numéro 2 d'ailleurs voici son affichage :

Voilà ce chapitre sur les boucles et le traitement conditionnelle est fini . Il est très important car il permet de réaliser de grandes tâches nouvelles surtout les instructions conditionnelles .
Leçon précédente : Les chaînes de caractères
Leçon suivante : Gestion du temps
|