typescript如何使用枚举
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,小编给大家分享一下typescript如何使用枚举,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!枚举枚举类型分为数字类型与
千家信息网最后更新 2025年01月18日typescript如何使用枚举枚举
小编给大家分享一下typescript如何使用枚举,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
枚举
枚举类型分为数字类型与字符串类型,其中数字类型的枚举可以当标志使用:
enum AnimalFlags { None = 0, HasClaws = 1 << 0, CanFly = 1 << 1, HasClawsOrCanFly = HasClaws | CanFly }interface Animal { flags: AnimalFlags; [key: string]: any; }function printAnimalAbilities(animal: Animal) { var animalFlags = animal.flags; if (animalFlags & AnimalFlags.HasClaws) { console.log('animal has claws'); } if (animalFlags & AnimalFlags.CanFly) { console.log('animal can fly'); } if (animalFlags == AnimalFlags.None) { console.log('nothing'); } }var animal = { flags: AnimalFlags.None }; printAnimalAbilities(animal); // nothing animal.flags |= AnimalFlags.HasClaws; printAnimalAbilities(animal); // animal has claws animal.flags &= ~AnimalFlags.HasClaws; printAnimalAbilities(animal); // nothing animal.flags |= AnimalFlags.HasClaws | AnimalFlags.CanFly; printAnimalAbilities(animal); // animal has claws, animal can fly
使用 |= 来添加一个标志;
组合使用 &= 和 ~ 来清理一个标志;
| 来合并标志。
这个或许不常用,在 typescript 关于 types 源码中我们也可以看到类似的代码:
字符串类型的枚举可以维护常量:
const enum TODO_STATUS { TODO = 'TODO', DONE = 'DONE', DOING = 'DOING'}function todos (status: TODO_STATUS): Todo[];todos(TODO_STATUS.TODO)
以上是"typescript如何使用枚举"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
类型
标志
篇文章
内容
字符
字符串
数字
不怎么
代码
大部分
常用
常量
更多
源码
知识
行业
资讯
资讯频道
频道
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
折戟壁垒tbc数据库
服务器黑屏但电脑一直在运行
宁波数据网络技术有哪些
剑三视频编辑器 数据库
软件开发公司税收优惠政策
河南省公安网络安全会议
tomcat中配置数据库
网络安全宣传架构
群控与群控软件开发商
泗阳大型网络技术价格表格
广安网络技术是什么
华为监控网络技术
太原新华互联网科技学院
数据库管理系统设计免费
阿里云服务器安全白名单
数据库连接是http连接吗
网络安全从我做起初中
中国网络安全公告
鲁能电力软件开发招聘
昆仑万维网络技术有限公司
静安区数字视频系统服务器
安徽服务器配件服务升级
怎样修复网络安全风险
广州粉象生活网络技术有限公司
精易阿里妈妈采集软件开发
苹果玩安卓服务器
网络安全开源情报
网络安全基础设施的重要性
宜昌乐维网络技术有限公司
惠州智能软件开发常见问题