枚举类型(enum)
一、数字枚举
数字枚举不写值的时候,默认是从0开始,如图:
打印的结果就是:
若我们设置 Types 的 red 的值为 1,则 green 的值为 2 ,blue 的值为 3,它是会自增的。当然,你也可以自行设定值。
二、字符串枚举
当我们的枚举是字符串枚举的时候,每一个的属性都需要定义值,它是不会递增的,如图:
当我们有一个属性没有定义值的时候,就会提示错误。
三、异构枚举
就是一个有多种不同类型的枚举,如图:
四、接口枚举
定义一个枚举 Types ,定义一个接口 A ,它有一个属性 red 值为 Types.yes
声明对象的时候要遵循给这个规则
五、const枚举
如果使用了 const 编译ts文件文件后,查看对应属性会将其编译成常量,而如果没有,编译出来则是一个对象,如图:
编译的结果:
六、反向映射
它包含了正向映射( name
-> value
)和反向映射( value
-> name
)
要注意的是 不会为字符串枚举成员生成反向映射。
打印的结果就是 0 0。