TypeScript学习———枚举、函数传参、抽象类

枚举

使用枚举我们可以定义一些带名字的常量。 使用枚举可以清晰地表达意图或创建一组有区别的用例

//枚举
enum service {
  "massage" = 0,
  "SPA" = 1,
  "daBaoJian" = 2,
}

function getService(status: service) {
  if (status == service.massage) {
    console.log("我要去马杀鸡");
  } else if (status == service.SPA) {
    console.log("我要去SPA");
  } else if (status == service.daBaoJian) {
    console.log("我要去大保健");
  }
}

getService(2); //我要去大保健

函数传参

可以使用扩散运算符...来进行传参

//传参
function bb(...result: Array<number>): number {
  let num: number = 0;
  result.forEach((item: number) => {
    num += item;
  });
  return num;
}

抽象类

抽象类用于给子类继承,且不允许被实例化,抽象类中的抽象方法、抽象属性必须为public且必须被子类继承。
抽象类中可以有非抽象属性和非抽象方法,也可以是私有或者公有,但是如果是私有的话子类就不能访问,无意义,所以一般情况下都设置为公有

以下是一个正常的抽象类继承例子:

//抽象类 Animal
abstract class Animal {
  name: string;
  constructor(name: string) {
    this.name = name;
  }
  abstract eat(): void;
}

//子类 Dog
class Dog extends Animal {
  constructor(name: string) {
    super(name);
  }
  eat(): void {
    console.log(this.name + "在吃屎");
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
TypeScript中,枚(Enums)是一种用于定义命名常量集合的数据类型。枚允许我们为一组相关的值分配易于理解的名称。 以下是使用枚的示例: ```typescript enum Direction { Up, Down, Left, Right } let myDirection: Direction = Direction.Up; console.log(myDirection); // 输出:0 // 使用枚值 if (myDirection === Direction.Up) { console.log("向上移动"); } ``` 在上面的例子中,我们定义了一个名为Direction的枚。它包含了Up、Down、Left和Right四个枚成员,它们分别对应的值是0、1、2和3。 我们可以通过将枚成员赋值给变量来使用枚值。在示例中,我们将Direction.Up赋给了myDirection变量,并输出了它的值(0)。 我们还可以使用if语句对枚值进行比较,以执行相应的操作。 除了默认情况下从0开始的自增值,我们还可以手动给枚成员指定值: ```typescript enum Direction { Up = 1, Down, Left, Right } console.log(Direction.Down); // 输出:2 ``` 在这个例子中,我们手动给Up赋值为1,后续成员的值会根据前一个成员自动递增。 枚还支持反向映射,即可以通过枚值获取对应的枚成员的名称: ```typescript enum Direction { Up = 1, Down, Left, Right } console.log(Direction[2]); // 输出:Down ``` 在这个例子中,我们通过使用方括号索引的方式,将2作为索引值递给Direction枚,然后输出对应的枚成员名称(Down)。 枚还支持其他一些高级特性,如字符串枚、异构枚等,你可以根据具体需求来选择适合的枚类型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱学习的前端小黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值