TypeScript-枚举成员类型和联合类型
枚举成员类型
可以把
枚举成员
当做类型
来使用
正确示例:
enum Gender { Male, Female } interface TestInterface { age: Gender.Male } class Person implements TestInterface { age: Gender.Male }
错误示例:
enum Gender { Male, Female } interface TestInterface { age: Gender.Male } class Person implements TestInterface { age: Gender.Female }
如上代码由于类型不匹配, 所以会报错
注意点
由于数字枚举的本质就是数值, 所以写一个数值也不会报错如下:
enum Gender { Male, Female } interface TestInterface { age: Gender.Male } class Person implements TestInterface { age: 0 }
如果是字符串枚举, 那么只能是枚举成员的值, 不能是其它的值
正确示例:
enum Gender { Male = 'yangbuyiya', Female = 'Jonathon_Lee' } interface TestInterface { age: Gender.Male } class Person implements TestInterface { age: Gender.Male }
错误示例:
enum Gender { Male = 'yangbuyiya', Female = 'Jonathon_Lee' } interface TestInterface { age: Gender.Male } class Person implements TestInterface { age: Gender.Female }
联合枚举类型
联合类型
联合类型就是将多种数据类型通过
|
连接起来
let value: (number | string); value = 1; value = 6; value = "123"; console.log(value);
我们可以把枚举类型当做一个
联合类型
来使用
enum Gender { Male, Female } interface TestInterface { age: Gender } class Person implements TestInterface { age: Gender.Male }
最后
本期结束咱们下次再见👋~
🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗