Conditionele uitspraken in TypeScript
In dit artikel leggen we conditionele uitspraken in TypeScript uit.
YouTube Video
If
-uitspraken in TypeScript
In TypeScript voert een if
-uitspraak takken uit die code uitvoert als een opgegeven voorwaarde true
is en het niet uitvoert als de voorwaarde false
is. De if
-uitspraak heeft dezelfde syntaxis als in JavaScript en maakt gebruik van de type-veiligheid van TypeScript voor conditionele vertakkingen.
Basis Syntax
De basis-syntaxis van de if
-verklaring is als volgt.
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}
- Als
condition
true
is, wordt de code in het volgende blok uitgevoerd. - Als
condition
false
is enanotherCondition
true
is, wordt de code in het volgende blok uitgevoerd. - Als geen van de voorwaarden
true
is, wordt de code in het laatsteelse
-blok uitgevoerd.
Voorbeeld 1: Basis if-else
-uitspraak
In het volgende voorbeeld wordt gecontroleerd of de variabele x
10 of groter is en vervolgens het resultaat weergegeven.
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
Voorbeeld 2: if-else if-else
-uitspraak
Gebruik else if
om meerdere voorwaarden te controleren en takken toe te voegen.
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
Voorbeeld 3: if
-uitspraak met typecontrole
Het is ook mogelijk om conditionele vertakkingen te maken voor specifieke typen met behulp van de typecontrolefunctie van TypeScript. Controleer bijvoorbeeld het type van een variabele met de typeof
-operator en voer daarbij een geschikte verwerking uit.
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"
Voorbeeld 4: Geneste if
-uitspraken
Je kunt ook geneste if
-uitspraken gebruiken om complexe voorwaarden te controleren.
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
Ternaire operator (voorwaardelijke operator)
Syntax
1condition ? valueIfTrue : valueIfFalse
Als je een if
-verklaring beknopter wilt schrijven, kun je de ternaire operator gebruiken.
Voorbeeld
1const number: number = 7;
2const result: string = number % 2 === 0 ? "Even" : "Odd";
3console.log(result); // "Odd"
In dit geval, aangezien number
gelijk is aan 7
, wordt Odd
weergegeven.
Samenvatting
- De
if
-uitspraak is een fundamentele controlestructuur voor het bepalen van welke verwerking moet worden uitgevoerd op basis van voorwaarden. - Je kunt meerdere voorwaarden afhandelen met
else if
. - Door
typeof
te gebruiken, kun je de typen van TypeScript benutten voor conditionele vertakkingen. - Het omgaan met complexe voorwaarden is mogelijk met geneste
if
-uitspraken. - Je kunt ook de ternaire operator gebruiken om voorwaardelijke takken beknopt te schrijven.
In TypeScript kan het gebruik van if
-uitspraken met inachtneming van type-veiligheid de betrouwbaarheid van de code verbeteren.
Switch
-uitspraken in TypeScript
De switch
-uitspraak in TypeScript is een controlestructuur die wordt gebruikt om code te vertakken op basis van meerdere voorwaarden. In plaats van if-else if
-uitspraken te gebruiken om meerdere voorwaarden te evalueren, kun je een switch
-uitspraak gebruiken om vertakkingslogica op een beknopte manier te schrijven op basis van specifieke waarden.
Basis Syntax
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}
In een switch
-uitspraak wordt het case
-blok uitgevoerd als de waarde die in een case
is gespecificeerd overeenkomt met de geëvalueerde expressie. Let op dat als er geen break
is, het volgende case
-blok achtereenvolgens wordt uitgevoerd. Het default
-blok wordt uitgevoerd als geen van de case
-instructies overeenkomt.
Voorbeeld 1: Basis switch
-instructie
In het onderstaande voorbeeld wordt een getal dat een dag van de week (0 tot 6) vertegenwoordigt opgegeven, en wordt de bijbehorende dagnaam weergegeven op basis van die waarde.
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
Voorbeeld 2: Voorbeeld met gebruik van default
default
is handig omdat het wordt uitgevoerd wanneer geen van de case
-instructies overeenkomt, zodat je onverwachte waarden kunt afhandelen.
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
Voorbeeld 3: Hetzelfde proces uitvoeren voor meerdere cases
Als je dezelfde actie wilt uitvoeren voor meerdere case
-instructies, kun je deze achter elkaar vermelden.
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
Voorbeeld 4: Gedrag wanneer break
wordt weggelaten
Het weglaten van een break
resulteert in een "fall-through"-gedrag waarbij de volgende case
ook wordt uitgevoerd.
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
Op deze manier wordt, nadat een case
overeenkomt, de volgende case
ook uitgevoerd, dus wordt meestal een break
gebruikt om onnodige fall-through te voorkomen.
Samenvatting
- De
switch
-instructie is een controle-structuur waarmee je vertakkingslogica op basis van meerdere voorwaarden beknopt kunt schrijven. - Elke
case
moet het proces expliciet beëindigen met behulp vanbreak
. - Het
default
-blok wordt uitgevoerd als geen van decases
overeenkomt. - Het is ook mogelijk om dezelfde bewerking uit te voeren voor meerdere
cases
.
De switch
-instructie in TypeScript is handig voor het efficiënt afhandelen van meerdere voorwaarden en behoud van leesbaarheid van de code.
Je kunt het bovenstaande artikel volgen met Visual Studio Code op ons YouTube-kanaal. Bekijk ook het YouTube-kanaal.