介绍
使用枚举我们可以定义一些带名字的常量。 使用枚举可以清晰地表达意图或创建一组有区别的用例。 TypeScript支持数字的和基于字符串的枚举。
格式:enum + 首字母大写的单词 { }
enum Sex{
male = '男',
female = '女'
}
获取枚举值
let sex: Sex = Sex.male;
console.log('sex ==>',sex); //sex ==> 男
数字枚举
当枚举的键名没有赋值的时,则默认值为0,1,2....
注意:当其中有一个赋值为字符串,其后面的要是没有赋值就会报错,后面的同时也需要赋值,如赋值为数字则不会报错
enum A001 {
a0 = 3,
a1,
a2 = 'mya2',
a3 = 'mya3',
a4 = 'mya4'
}
let result: A001 = A001.a1;
console.log('result ==>',result); //result ==> 4
字符串枚举
字符串枚举的概念很简单,但是有细微的运行时的差别 。 在一个字符串枚举里,每个成员都必须用字符串字面量,或另外一个字符串枚举成员进行初始化。
enum A001 {
a0 = 3,
a1,
a2 = 'mya2',
a3,
a4
}
要是像上面的这样子定义,里面的a3和a4就会显示错误。为了避免报错,则需要给a3和a4赋值。
enum A001 {
a0 = 3,
a1,
a2 = 'mya2',
a3 = 'mya3',
a4 = 'mya4'
}