Instructions conditionnelles en TypeScript
Dans cet article, nous expliquerons les instructions conditionnelles en TypeScript.
YouTube Video
Les instructions if
en TypeScript
En TypeScript, une instruction if
effectue une branchement qui exécute du code si une condition spécifiée est true
et ne l'exécute pas si la condition est false
. L'instruction if
a la même syntaxe qu'en JavaScript et utilise la sécurité des types de TypeScript pour effectuer des branchements conditionnels.
Syntaxe de base
La syntaxe de base de l'instruction if
est la suivante.
1if (condition) {
2 // Code to execute if the condition is true
3} else if (anotherCondition) {
4 // Code to execute if the first condition is false
5 // and the another condition is true
6} else {
7 // Code to execute if all conditions are false
8}
- Si
condition
esttrue
, le code du bloc suivant est exécuté. - Si
condition
estfalse
etanotherCondition
esttrue
, le code du bloc suivant est exécuté. - Si aucune des conditions n'est
true
, le code du bloc finalelse
est exécuté.
Exemple 1 : Instruction de base if-else
Dans l'exemple suivant, il vérifie si la variable x
est égale ou supérieure à 10 et affiche le résultat.
1let x: number = 15;
2
3if (x >= 10) {
4 console.log("x is 10 or greater");
5} else {
6 console.log("x is less than 10");
7}
8// Outputs: x is 10 or greater
Exemple 2 : Instruction if-else if-else
Pour vérifier plusieurs conditions, utilisez else if
pour ajouter des branches.
1let score: number = 85;
2
3if (score >= 90) {
4 console.log("Excellent");
5} else if (score >= 70) {
6 console.log("Passed");
7} else {
8 console.log("Failed");
9}
10// Outputs: Passed
Exemple 3 : Instruction if
avec vérification des types
Il est également possible d'effectuer des branchements conditionnels pour des types spécifiques en utilisant la fonction de vérification des types de TypeScript. Par exemple, vérifiez le type d'une variable avec l'opérateur typeof
et effectuez le traitement approprié.
1let value: any = "Hello";
2
3if (typeof value === "string") {
4 console.log("The value is a string: " + value);
5} else if (typeof value === "number") {
6 console.log("The value is a number: " + value);
7} else {
8 console.log("The value is of another type");
9}
10// Outputs: "The value is a string: Hello"
Exemple 4 : Instructions if
imbriquées
Vous pouvez également imbriquer des instructions if
pour vérifier des conditions complexes.
1let age: number = 25;
2let isMember: boolean = true;
3
4if (age >= 18) {
5 if (isMember) {
6 console.log("You are a member and 18 years old or older");
7 } else {
8 console.log("You are not a member but 18 years old or older");
9 }
10} else {
11 console.log("You are under 18 years old");
12}
13// Output
14// You are a member and 18 years old or older
Opérateur ternaire (opérateur conditionnel)
Syntaxe
1condition ? valueIfTrue : valueIfFalse
Si vous souhaitez écrire une instruction if
de manière plus concise, vous pouvez utiliser l'opérateur ternaire.
Exemple
1const number: number = 7;
2const result: string = number % 2 === 0 ? "Even" : "Odd";
3console.log(result); // "Odd"
Dans ce cas, comme number
est 7
, Odd
sera affiché.
Résumé
- L'instruction
if
est une structure de contrôle fondamentale pour déterminer quel traitement exécuter en fonction des conditions. - Vous pouvez gérer plusieurs conditions en utilisant
else if
. - En utilisant
typeof
, vous pouvez tirer parti des types de TypeScript pour des branchements conditionnels. - La gestion de conditions complexes est possible avec des instructions
if
imbriquées. - Vous pouvez également utiliser l'opérateur ternaire pour écrire des branches conditionnelles de manière concise.
En TypeScript, l'utilisation d'instructions if
tout en tenant compte de la sécurité des types peut améliorer la fiabilité du code.
Les instructions switch
en TypeScript
L'instruction switch
en TypeScript est une structure de contrôle utilisée pour effectuer un branchement de code sur la base de plusieurs conditions. Au lieu d'utiliser des instructions if-else if
pour évaluer plusieurs conditions, vous pouvez utiliser une instruction switch
pour écrire de manière concise une logique de branchement basée sur des valeurs spécifiques.
Syntaxe de base
1switch (expressionToEvaluate) {
2 case value1:
3 // Code to execute if the expression evaluates to value1
4 break;
5 case value2:
6 // Code to execute if the expression evaluates to value2
7 break;
8 default:
9 // Code to execute if none of the conditions match
10}
Dans une instruction switch
, si la valeur spécifiée dans un case
correspond à l'expression évaluée, le bloc case
est exécuté. Attention, si un break
est absent, le bloc case
suivant sera exécuté consécutivement. Le bloc default
est exécuté si aucune des instructions case
ne correspond.
Exemple 1 : Instruction de base switch
Dans l'exemple ci-dessous, un nombre représentant un jour de la semaine (de 0 à 6) est donné, et le nom du jour correspondant est affiché en fonction de cette valeur.
1let day: number = 3;
2
3switch (day) {
4 case 0:
5 console.log("Sunday");
6 break;
7 case 1:
8 console.log("Monday");
9 break;
10 case 2:
11 console.log("Tuesday");
12 break;
13 case 3:
14 console.log("Wednesday");
15 break;
16 case 4:
17 console.log("Thursday");
18 break;
19 case 5:
20 console.log("Friday");
21 break;
22 case 6:
23 console.log("Saturday");
24 break;
25 default:
26 console.log("Invalid day");
27}
28// Outputs: Wednesday
Exemple 2 : Exemple avec default
default
est utile car il s'exécute lorsque aucune des instructions case
ne correspond, vous permettant ainsi de gérer des valeurs inattendues.
1let statusText: string = "pending";
2
3switch (statusText) {
4 case "success":
5 console.log("Operation succeeded");
6 break;
7 case "error":
8 console.log("An error occurred");
9 break;
10 case "pending":
11 console.log("Processing");
12 break;
13 default:
14 console.log("Unknown status");
15}
16// Outputs: Processing
Exemple 3 : Exécuter le même processus pour plusieurs cases
Si vous souhaitez effectuer la même action pour plusieurs instructions case
, vous pouvez les lister consécutivement.
1let fruit: string = "apple";
2
3switch (fruit) {
4 case "apple":
5 case "banana":
6 case "orange":
7 console.log("This is a fruit");
8 break;
9 default:
10 console.log("This is not a fruit");
11}
12// Outputs: This is a fruit
Exemple 4 : Comportement lorsque break
est omis
Omettre un break
entraîne un comportement de "fall-through" où l'instruction case
suivante est également exécutée.
1let rank: number = 1;
2
3switch (rank) {
4 case 1:
5 console.log("Gold");
6 case 2:
7 console.log("Silver");
8 case 3:
9 console.log("Bronze");
10 default:
11 console.log("Not ranked");
12}
13// Outputs:
14// Gold
15// Silver
16// Bronze
17// Not ranked
De cette manière, après qu'une case
correspond, l'instruction case
suivante est également exécutée, c'est pourquoi un break
est généralement utilisé pour éviter un "fall-through" inutile.
Résumé
- L'instruction
switch
est une structure de contrôle qui vous permet d'écrire une logique de branchement basée sur plusieurs conditions de manière concise. - Chaque
case
doit explicitement terminer le processus en utilisantbreak
. - Le bloc
default
est exécuté si aucune descases
ne correspond. - Il est également possible d'effectuer la même opération pour plusieurs
cases
.
L'instruction switch
en TypeScript est utile pour gérer efficacement plusieurs conditions tout en maintenant la lisibilité du code.
Vous pouvez suivre l'article ci-dessus avec Visual Studio Code sur notre chaîne YouTube. Veuillez également consulter la chaîne YouTube.