TypeScript(十四)枚举类型

186 阅读1分钟

一、什么是枚举类型

当一个变量有几种可能的取值时,可以将它定义为枚举类型。比如一年有春夏秋冬四个季节,一天有24个小时等等。

二、枚举的使用

枚举使用 enum 关键字来定义,比如

enum season {
  spring,
  summer,
  autumn,
  winter
};

枚举中的枚举名会被从0开始递增赋值,同时也可以根据枚举值反向取到枚举名。

enum season {
  spring,
  summer,
  autumn,
  winter
};

console.log(season.spring)  //0
console.log(season[1])      //summer

枚举也可以手动赋值,未进行赋值的会随着当前值进行递增

enum season {
  spring  = 3,
  summer,
  autumn,
  winter
};

console.log(season.spring) //3
console.log(season.summer) //4
console.log(season.autumn) //5
console.log(season.winter) //6

三、使用场景

我们可以使用枚举去作为一个函数的参数

enum season {
  spring,
  summer,
  autumn,
  winter
};

function getSeason(state) {
  if (state === 0) {
    return "吃春饼"
  } else if (state === 1) {
    return "吃西瓜"
  } else if (state === 2) {
    return "吃螃蟹"
  } else if (state === 3) {
    return "吃火锅"
  }
}
let result = getSeason(season.winter)
console.log(`咱们去${result}`)         //咱们去吃火锅