新建enum.ts并在jindex.ts中引用函数
一个简单的数字枚举编码
能够经过两种方式获取枚举的值3d
获取到编码,第一个默认为0,后面的一次递增对象
第二种形式blog
能够本身制定编码,那么后面的一次递增接口
所有一次递增的结果ip
制定中间的为2 那么第一个仍是0 ,2后面的会递增字符串
也能够单独指定,能够随便指定,不必定按照从小到大的顺序编译
能够定义一个常量,把常量赋值给枚举bfc
也能够定义函数
某个字段使用的计算值,或者是常量。它后面的枚举必需要设置初始值
它后面的枚举必需要设置上值
一个枚举不只能够经过他的字段名获取枚举的值,还能够经过值获得它的字段名
ts的代码编译成通常的js代码
打印定义的枚举值对象
定义字符串枚举的时候,既可使用字符串常量,也可使用枚举里面的字段
既包含数字又包含字符串的枚举。不建议使用异构枚举。根据本身的需求,尽量少的使用异构枚举
知足这三个条件枚举这就能够作为类型来使用
第一种,枚举成员类型。Anmimals.Dog就是做为类型来使用
声明一个dog类,这里的Anmimals.Dog的值就是1 因此这里咱们直接写1也是能够的
这里写成Anmimals.Cat就会报错,由于在声明dog的时候,指定了类型是接口Dog里面的type是Animals.Dog类型的也就是只为1
联合枚举类型
若是咱们用刚才的Animals.Dog也是会报错的,这个就是联合枚举类型
一个枚举值编译完成后就是一个真实的对象,因此咱们能够在代码的运行时中使用这个枚举值的,就能够把它当作一个比较丰富的对象
枚举前面加上const之后,它就不会把咱们的枚举值编译成一个js中真实存在的对象
咱们在使用枚举值只是提升咱们代码的可读性
const去掉之后,枚举值编译为真实的js就会变成一个对象。dog的取值就是从按个对象上取的值