Dans la première partie de cette série, nos programmes n'étaient écrits que comme une séquence d'énoncés. Cette structure limite sévèrement ce que nous pouvons faire. Supposons que vous concevez un programme devant connecter les utilisateurs. Vous souhaiterez peut-être diriger un utilisateur vers une page s'il donne les informations d'identification correctes et l'envoyer à une autre s'il n'est pas enregistré.
Pour ce faire, vous devez utiliser une structure de décision comme une instruction if. Cela effectuera une action uniquement sous certaines conditions. Si la condition n'existe pas, l'action n'est pas effectuée. Dans ce tutoriel, vous apprendrez tout sur les conditions.
Une seule instruction if exécutera une action si une condition est vraie. Si la condition est fausse, le programme exécutera la prochaine instruction qui se trouve en dehors du bloc if. Dans l'exemple suivant, si l'expression il pleut()
est vrai, alors nous allons putOnCoat ()
et putOnRainboots ()
puis sors()
. Si il pleut()
est faux, le programme ne s'exécutera que sors()
.
if (isRaining) putOnCoat (); putOnRainboots (); sors();
C'est la forme générale pour écrire une instruction if:
if (condition) statement; déclaration; etc.
le état est une expression qui a la valeur true ou false. Une expression vraie ou fausse s'appelle une expression booléenne. Les expressions booléennes sont faites avec des opérateurs relationnels.
Un opérateur relationnel compare deux valeurs et détermine si la relation entre elles est vraie ou fausse. Ils peuvent être utilisés pour créer des expressions booléennes pour nos conditions. Voici une liste d'opérateurs relationnels avec des exemples:
Opérateur | Sens | Exemple | Sens |
---|---|---|---|
== | égalité | x == y | Est-ce que x est égal à y? |
=== | égalité stricte | x === y | Est-ce que x est égal à y en valeur et en type? |
!= | inégalité | x! = y | Est-ce que x n'est pas égal à y? |
!== | stricte inégalité | x! == y | Est-ce que x n'est pas égal à y en valeur et en type? |
> | plus grand que | x> y | Est-ce que x est plus grand que y? |
< | moins que | X < y | Est-ce que x est inférieur à y? |
> = | Meilleur que ou égal | x> = y | Est-ce que x est supérieur ou égal à y? |
<= | inférieur ou égal | X <= y | Est-ce que x est inférieur ou égal à y? |
Il est important de noter la différence entre l'opérateur d'égalité ==
et l'opérateur d'égalité stricte ===
. Par exemple, l'expression 2 == "2"
est vrai. Mais l'expression 2 === "2"
c'est faux. Dans le deuxième exemple, les deux valeurs sont des types de données différents, raison pour laquelle l'expression est fausse. Il est préférable d'utiliser ===
ou !==
.
L'exemple suivant affiche le message "Vous obtenez un A".
soit note = 93; if (grade> = 90) console.log ("Vous obtenez un A");
Quelle est la valeur de l'expression 5> 3? 6! = "6"?
Une instruction if-else exécutera un bloc d'instructions si sa condition est vraie ou un autre bloc si sa condition est fausse. L'exemple suivant affiche le message «nom d'utilisateur valide» car la condition est vraie..
let username = "alberta"; if (nom d'utilisateur === "alberta") console.log ("nom d'utilisateur valide"); else console.log ("Nom d'utilisateur incorrect. Veuillez réessayer.");
C'est la forme générale d'une déclaration if-else:
if (condition) statement; déclaration; etc. else statement; déclaration; etc.
Quel sera le résultat de ce programme:
let isLoggedIn = false; if (isLoggedIn) console.log ("Bienvenue"); else console.log ("Vous n'êtes pas connecté");
Il est également possible de vérifier plusieurs conditions. Exemple:
Soit num = 3; if (num === 1) console.log ("I"); else if (num === 2) console.log ("II"); else if (num === 3) console.log ("III"); else if (num === 4) console.log ("IV"); else if (num === 5) console.log ("V"); else console.log ("Entrée invalide");
C'est la forme générale pour écrire plusieurs déclarations if-else-if:
if (condition1) statement; déclaration; etc. else if (condition2) statement; déclaration; etc. else statement; déclaration; etc.
Une instruction switch est également utilisée pour exécuter de manière conditionnelle une partie de votre programme. L'exemple suivant implémente notre convertisseur de chiffres romains sous la forme d'une instruction switch:
Soit num = 3; switch (num) cas 1: console.log ("I"); Pause; cas 2: console.log ("II"); Pause; cas 3: console.log ("III"); Pause; cas 4: console.log ("IV"); Pause; cas 5: console.log ("V"); Pause; défaut: console.log ("Entrée invalide");
C'est la forme générale d'une instruction switch:
switch (expression) case value1: statement; déclaration; etc. pause; case value2: statement; déclaration; etc. pause; default: statement; déclaration; etc.
Chaque cas représente une valeur que notre expression peut prendre. Seul le bloc de code du cas vrai sera exécuté. Nous incluons une instruction break à la fin du bloc de code afin que le programme quitte l'instruction switch et n'exécute aucun autre cas. Le cas par défaut s'exécute quand aucun des autres cas n'est vrai.
Ecrivez une instruction switch qui affiche le jour de la semaine auquel un numéro est attribué. Par exemple, 1 = dimanche, 2 = lundi, etc..
Et l'opérateur &&
et l'opérateur ou ||
nous permettent de relier deux expressions booléennes. Le pas opérateur !
nie une expression. Pour illustrer le fonctionnement des opérateurs logiques, nous allons examiner une table de vérité. Une table de vérité contient toutes les combinaisons de valeurs utilisées avec les opérateurs. j'utilise P pour représenter l'expression de gauche et Q pour l'expression de droite.
&&
table de vérité:
P | Q | P && Q |
---|---|---|
vrai | vrai | vrai |
vrai | faux | faux |
faux | vrai | faux |
faux | faux | faux |
Nous lisons le tableau qui traverse chaque rangée. La première rangée nous dit que quand P est vrai et Q est vrai, P && Q est vrai. L'exemple suivant teste si 82 est compris entre 60 et 100 inclus..
||
table de vérité:
P | Q | P || Q |
---|---|---|
vrai | vrai | vrai |
vrai | faux | vrai |
faux | vrai | vrai |
faux | faux | faux |
Cet exemple teste si 82 est en dehors de la plage 60-100:
!
table de vérité:
P | !P |
---|---|
vrai | faux |
faux | vrai |
Exemple:
Remplissez le tableau avec les valeurs manquantes.
P | Q | !P | !Q | !P &&! Q | !P || ! Q |
---|---|---|---|---|---|
vrai | vrai | ||||
vrai | faux | ||||
faux | vrai | ||||
faux | faux |
Quelque chose d’utile à savoir sur les opérateurs logiques est que si l’expression à gauche du &&
Si l'opérateur est faux, l'expression de droite ne sera pas vérifiée car toute la déclaration est fausse. Et si l'expression à gauche d'un ||
Si l'opérateur est vrai, l'expression de droite ne sera pas vérifiée car la totalité de l'instruction est vraie..
Un programme peut exécuter des blocs de code de manière conditionnelle à l'aide d'expressions booléennes. Une expression booléenne est écrite à l'aide d'opérateurs relationnels. Les opérateurs logiques nous permettent de combiner des expressions booléennes.
Une seule instruction if donne au programme un chemin alternatif à suivre si une condition est remplie. Les déclarations if-else fournissent une deuxième ligne de conduite si la condition est fausse. Et les déclarations if-else-if nous permettent de tester plusieurs conditions. Les instructions switch peuvent être utilisées comme alternative à une instruction if-else-if lorsque vous devez tester plusieurs conditions..
Ensuite, dans la partie 3, nous discuterons des boucles.