Vous êtes ici : Accueil des cours Misfu > Informatique > Apprendre la programmation > Cours Javascript > Les déclarations en JavaScript
Traduction de la page Les déclarations en JavaScript rédigée par Peter-Paul Koch et traduite par Christophe Bruggeman
La traduction est en cours, si vous trouvez une erreur sur une page ou si vous souhaitez suggérer une amélioration, n'hésitez pas à utiliser le forum.
Quand vous écrivez vos propres scripts il est très utile de savoir quels sont les déclarations les plus communes en Javascript. Avec if()
vous pouvez contrôler les conditions, alors que for()
vous permet de passer par un ensemble de données et de faire la même chose avec chaque morceau de données. Tous les deux ont des déclarations très communes et vous devriez savoir comment elles fonctionnent.
Ces déclarations sont communes à tous les langages de programmation, ainsi si vous les comprenez pour le Javascript, vous les comprenez pour toutes autres langages et jamais vous n’aurez à en réapprendre les concepts, seulement la syntaxe spécifique au langage de programmation.
Pour le moment j'explique les déclarations suivantes :
Un code comme ceci :
if (une condition est vérifiée) { plus de commandes Javascript }
est utilisé quand vous voulez exécuter du code seulement si une condition spécifique est rempli.
Par exemple, supposez que vous lisiez le revenu annuel d'un utilisateur provenant d'un formulaire et que vous mettiez le résultat dans la variable revenu
.
Maintenant si le revenu est de plus de 100.000€, vous souhaitez pouvoir informer l'utilisateur qu’il dispose d’un bénéfice spécial. Alors le code devient :
var revenu = [lecture du formulaire] if (revenu > 100000) { alert('Nous pouvons vous offrir un bénéfice spécial.'); (plus de code) }
Le code est très simple: vous prenez revenu
et vous le comparez à 100000. S'il est plus grand, donc si la condition (revenu > 100000
) est réuni, le code entre accolade {}
est exécuté. Si la condition n'est pas remplie, rien ne se produit.
Voyez la page sur la logique booléenne pour une description des conditions employées pour ce travail.
Supposez maintenant que vous vouliez également savoir si l'utilisateur a sa propre maison. Si il en a une mais à également un revenu de moins de 100.000€ vous voulez l'informer des autres possibilités qui s’offrent à lui.
Si vous voulez vérifier pour mamaison
seulement si revenu
n'est pas plus grand que 100.000€ vous devez employer ce code :
var revenu = [lecture sur le formulaire] var mamaison = [lecture sur le formulaire, la valeur est 'Yes' ou 'No'] if (revenu > 100000) { alert('Nous pouvons vous offrir un bénéfice spécial.'); (plus de code) } else if (mamaison == 'Yes') { alert('Nous avons encore quelques offres'); (plus de code) }
Avec if - else if
vous pouvez définir les diverses conditions qui seront vérifiées l'une après l'autre jusqu'à ce que le script trouve la bonne. Alors le bloc suivant la bonne condition sera exécuté. Après l’exécution d’un bloc le script ignore les autres else if's.
Dans le cas de ce script le premier contrôle est de voir si revenu
est plus grand que 100000. S'il ne l’est pas, il vérifie alors (else if
) si l'utilisateur possède une maison.
Ainsi dans la construction d’un if – else if il y a quatre possibilités :
Naturellement vous pouvez employer autant de else if que nécessaire.
Supposez maintenant qu'on envoie un mot d'escuse à ces gens qui ont un revenu de moins de 100.000€ et qui n'ont aucune maison. Vous pouvez ajouter le code suivant en dessous du dernier else if:
else { alert ('désolé'); (plus de code) }
Ce else
veut dire: dans tous les autres cas. Si aucune des conditions ci-dessus n'est rencontrée, ce bloc de code sera exécuté.
Habituellement dans une condition if
vous voulez comparer deux chaînes (strings) ou deux nombres. Procédez comme suit:
==
)
Si vous voulez comparer des chaînes, soyez sûr d'écrire toujours la chaîne entre apostrophes (single quotes), comme ca :
if (mamaison == 'Yes') { alert('We still have some offers'); (more code) }
Si vous enlevez les apostrophes, JavaScript pensera que vous voulez comparer la valeur de la variable
ownhouse
avec celle de la variable Yes
.
if (ownhouse == Yes) { alert('Nous avons d’autres offres'); (plus de code) }
Si vous n'avez pas déclaré une variable Yes
d’étranges erreurs peuvent arriver.
Vous pouvez également voir si un objet existe :
if (document.images) { faire quelque chose avec document.images }
Si l'objet document.images existe, la condition devient vrai
et le bloc de code est exécuté.
La page de détection d'objet explique pourquoi vous devriez faire ca.
Ce bloc de code
for (var i=0;i<5;i++) { alert('i = ' + i); }
est une boucle for
qui donne l’affichage des nombres 0.1.2.3 et 4.
Essayez-le pour voir ce qu'il fait.
Comme vous pouvez le voir, alert permet d’afficher la valeur de i et cette valeur va de 0 à 4. Ceci est provoqué par la déclaration for
:
for (var i=0;i<5;i++)
Ceci signifie que : la variable i
commence à 0 (var i=0;
), la boucle for continue aussi longtemps que i
est inférieur à 5
(i<5
) et i
est augmenté d'un à chaque fois que la boucle est incrémenté (i++
).
En pratique, ça signifie que le code entre accolade {}
est exécuté avec i=0
, puis avec i=1
etc... jusque ài=4
.
Quand il augmente i
à 5, le code voit que la condition i<5
n'est plus réuni et il arrête la boucle.
Ainsi la déclaration for
est utilisé pour exécuter le même code plusieurs fois avec à chaque fois une valeur de i
.
différente. Vous emploierez principalement cette déclaration si vous voulez passer par un tableau et si vous souhaitez faire la même chose avec chacun de ses éléments.
En disant var i
vous déclarez une nouvelle variable locale, pour la boucle for seulement. Il est parfois très important de la déclarer en tant que tels parce que le programme peut la confondre si vous employez plusieurs fois la variable
i
En la déclarant de façon explicite vous la confinez pour cette boucle for seulement, dès que le programme l’aura exécuter, la variable sera effacé de la mémoire du programme. Ceci évite toute confusion.
Vous pouvez également mettre un if
à l'intérieur d’un for
, comme ceci :
for (var i=0;i<5;i++) { if (letableau[i] == 'Yes') { (faire quelque chose) } }
Maintenant le code prend tous les éléments du tableau letableau
et pour chaque élément il examine si la valeur est
Yes
. Si c’est le cas, le bloc de code est exécuté.
Naturellement, vous pouvez faire le contraire et aller de 4 à 0:
for (var i=4;i>=0;i--)
Ou de 0 à 10 par étapes de 2
for (var i=0;i<11;i+=2)
enfin tous ce qui peut vous être nécessaire.
Une autre déclarations sera for (var i in object)
. Ceci fait la même chose, excepté que vous passez par toutes les propriétés d'un objet. Cette propriété est expliqué sur la page
associative arrays.