TypeScript中的条件语句
本文将介绍TypeScript中的条件语句。
YouTube Video
TypeScript中的If语句
在TypeScript中,if语句根据条件是否为true进行分支,如果条件为true则执行代码,若条件为false则不执行。if语句与JavaScript中的语法相同,并利用TypeScript的类型安全功能进行条件分支。
基本语法
if语句的基本语法如下。
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}- 如果
condition为true,则执行后续代码块中的代码。 - 如果
condition为false且anotherCondition为true,则执行后续代码块中的代码。 - 如果没有条件为
true,则执行最终else块中的代码。
示例1:基础的if-else语句
在以下示例中,检查变量x是否大于或等于10并输出结果。
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
示例2:if-else if-else语句
若要检查多个条件,可以使用else if添加分支。
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
示例3:带类型检查的if语句
还可以使用TypeScript的类型检查功能为特定类型执行条件分支。例如,可以使用typeof操作符检查变量的类型并进行相应处理。
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"
示例4:嵌套的if语句
你还可以嵌套if语句以检查复杂条件。
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
三元运算符(条件运算符)
语法
1condition ? valueIfTrue : valueIfFalse如果想更简洁地编写if语句,可以使用三元运算符。
示例
1const number: number = 7;
2const result: string = number % 2 === 0 ? "Even" : "Odd";
3console.log(result); // "Odd"
在这种情况下,由于number是7,将会显示Odd。
总结
if语句是一种基本的控制结构,用于根据条件决定执行哪些处理。- 可以使用
else if来处理多个条件。 - 通过使用
typeof,可以利用TypeScript的类型进行条件分支。 - 通过嵌套
if语句可以处理复杂条件。 - 你也可以使用三元运算符以简洁的方式书写条件分支。
在TypeScript中,考虑类型安全使用if语句可以提高代码可靠性。
TypeScript中的Switch语句
TypeScript中的switch语句是一种控制结构,用于根据多个条件分支代码。与使用if-else if语句评估多个条件相比,可以使用switch语句更简洁地编写基于特定值的分支逻辑。
基本语法
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}在switch语句中,如果case中指定的值与评估表达式匹配,则执行该case块。请注意,如果没有break,将连续执行下一个case块。default块在没有任何case语句匹配时执行。
示例1:基本的switch语句
在下面的示例中,输入一个表示星期几的数字(0到6),并根据该值输出相应的星期名称。
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
示例2:使用default的示例
default非常有用,因为当没有任何case语句匹配时它会运行,从而允许您处理意外值。
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
示例3:为多个case执行相同的过程
如果您想对多个case语句执行相同的操作,可以将它们连续列出。
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
示例4:省略break时的行为
省略break会导致“贯穿”行为,其中下一个case也会被执行。
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
以这种方式,在一个case匹配后,下一个case也会被执行,因此通常使用break以防止不必要的贯穿。
总结
switch语句是一种控制结构,允许您简洁地基于多个条件编写分支逻辑。- 每个
case都应该通过break显式终止流程。 - 如果没有任何
case匹配,则执行default块。 - 也可以对多个
case执行相同的操作。
TypeScript中的switch语句对于高效地处理多个条件,同时保持代码可读性非常有用。
您可以在我们的YouTube频道上使用Visual Studio Code跟随上述文章进行学习。 请也查看我们的YouTube频道。