条件语句用于基于不同的条件来执行不同的动作。
TypeScript 条件语句是通过一条或多条语句的执行结果(True 或 False)来决定执行的代码块。
可以通过下图来简单了解条件语句的执行过程:
通常在写代码时,您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语句来完成该任务。
在 TypeScript 中,我们可使用以下条件语句:
TypeScript if 语句由一个布尔表达式后跟一个或多个语句组成。
语法格式如下所示:
1 2 3 |
if(boolean_expression){ # 在布尔表达式 boolean_expression 为 true 执行 } |
如果布尔表达式 boolean_expression为 true,则 if 语句内的代码块将被执行。如果布尔表达式为 false,则 if 语句结束后的第一组代码(闭括号后)将被执行。
1 2 3 4 |
var num:number = 5 if (num > 0) { console.log("数字是正数") } |
编译以上代码得到如下 JavaScript 代码:
1 2 3 4 |
var num = 5; if (num > 0) { console.log("数字是正数"); } |
执行以上 JavaScript 代码,输出结果为:
1 |
数字是正数 |
一个 if 语句后可跟一个可选的 else 语句,else 语句在布尔表达式为 false 时执行。
语法格式如下所示:
1 2 3 4 5 |
if(boolean_expression){ # 在布尔表达式 boolean_expression 为 true 执行 }else{ # 在布尔表达式 boolean_expression 为 false 执行 } |
如果布尔表达式 boolean_expression 为 true,则执行 if 块内的代码。如果布尔表达式为 false,则执行 else 块内的代码。
1 2 3 4 5 6 |
var num:number = 12; if (num % 2==0) { console.log("偶数"); } else { console.log("奇数"); } |
编译以上代码得到如下 JavaScript 代码:
1 2 3 4 5 6 7 |
var num = 12; if (num % 2 == 0) { console.log("偶数"); } else { console.log("奇数"); } |
执行以上 JavaScript 代码,输出结果为:
1 |
偶数 |
if…else if….else 语句在执行多个判断条件的时候很有用。
语法格式如下所示:
1 2 3 4 5 6 7 8 9 |
if(boolean_expression 1) { # 在布尔表达式 boolean_expression 1 为 true 执行 } else if( boolean_expression 2) { # 在布尔表达式 boolean_expression 2 为 true 执行 } else if( boolean_expression 3) { # 在布尔表达式 boolean_expression 3 为 true 执行 } else { # 布尔表达式的条件都为 false 时执行 } |
需要注意以下几点:
1 2 3 4 5 6 7 8 |
var num:number = 2 if(num > 0) { console.log(num+" 是正数") } else if(num < 0) { console.log(num+" 是负数") } else { console.log(num+" 不是正数也不是负数") } |
编译以上代码得到如下 JavaScript 代码:
1 2 3 4 5 6 7 8 9 10 |
var num = 2; if (num > 0) { console.log(num + " 是正数"); } else if (num < 0) { console.log(num + " 是负数"); } else { console.log(num + " 不是正数也不是负数"); } |
执行以上 JavaScript 代码,输出结果为:
1 |
2 是正数 |
一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。
switch 语句的语法:
1 2 3 4 5 6 7 8 9 10 11 12 |
switch(expression){ case constant-expression : statement(s); break; /* 可选的 */ case constant-expression : statement(s); break; /* 可选的 */ /* 您可以有任意数量的 case 语句 */ default : /* 可选的 */ statement(s); } |
switch 语句必须遵循下面的规则:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
var grade:string = "A"; switch(grade) { case "A": { console.log("优"); break; } case "B": { console.log("良"); break; } case "C": { console.log("及格"); break; } case "D": { console.log("不及格"); break; } default: { console.log("非法输入"); break; } } |
编译以上代码得到如下 JavaScript 代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
var grade = "A"; switch (grade) { case "A": { console.log("优"); break; } case "B": { console.log("良"); break; } case "C": { console.log("及格"); break; } case "D": { console.log("不及格"); break; } default: { console.log("非法输入"); break; } } |
执行以上 JavaScript 代码,输出结果为:
1 |
优 |
from:https://www.runoob.com/typescript/ts-if-statement.html