在这篇博文中,我将带你了解 typescript switch case 的各种例子。
类型脚本的开关案例
Typescript是面向对象的语言,是javascript的超级力量,包括许多语言特性。开关语句是编程语言的基本模块之一,用于条件表达,避免嵌套if else语句。
下面是一个基本的语法
switch(expression){
case case1: statements
break;
case case2: statements
break;
default:
default statements;
}
让我们看看typescript的switch case中的各种例子
字符串变量在switch和case中的例子
字符串和case语句接受的是字符串类型的变量和数据。值的类型应该是原始的string ,而不是全局对象String 。
重要提示 在下面的例子中
- 开关表达式接受字符串数据类型的变量
- 在每个案例中,值的类型是字符串
- 每个案例都返回值
- 每个案例都有break语句来退出循环
class SwitchExample {
public isWorkingDay(weekName: string): boolean {
switch (weekName) {
case 'saturday':
console.log('saturday')
return false;
break;
case 'sunday':
console.log('sunday')
return false;
break;
default:
console.log('working day')
return true;
break;
}
}
}
var example = new SwitchExample();
console.log(example.isWorkingDay('sunday'))
console.log(example.isWorkingDay('monday'))
输出
sunday
false
working day
true
开关情况下的原始数据类型值
切换案例接受原始类型的数字和表达式
下面是一个使用switch case检查给定数字是正还是负的例子。
表达式接受返回真或假的条件表达,每个case块必须提供布尔值。
class SwitchNumberExample {
public isPositive(value: number): boolean {
switch (value < 0) {
case false:
console.log('negative number')
return false;
break;
default:
console.log('positive number')
return true;
break;
}
}
}
var example = new SwitchNumberExample();
console.log(example.isPositive(1))
console.log(example.isPositive(-1))
下面是一个输出
negative number
false
positive number
true
带对象和接口的开关案例联合类型
下面的例子使用了以下内容
- 创建了没有方法的标记接口
- 通过实现动物,为动物和狮子提供了类
- 每个类都有鉴别器类型
- 切换案例接受狗和狮子的联合类型
- 联合类型的表达式针对字符串类型的案例值进行评估
interface Animal {}
class Dog implements Animal {
type: string="dog";
}
class Lion implements Animal {
type: string= "lion";
}
class SwitchClassExample {
public getAnimal(animal: Dog | Lion) {
switch (animal.type) {
case 'dog':
console.log('Animal is Dog ');
break;
case 'lion':
console.log('Animal is Lion ');
break;
default:
console.log('Other Animal types');
break;
}
}
}
var example = new SwitchClassExample();
let animal=new Dog();
example.getAnimal(animal);
example.getAnimal(new Lion());
并给定输出为
Letter b,c, and d Checked