您的位置:首页 > 汽车 > 新车 > 武汉网络营销公司哪家好_cms站群管理系统_谷歌搜索网址_seo优化网

武汉网络营销公司哪家好_cms站群管理系统_谷歌搜索网址_seo优化网

2025/1/10 15:00:21 来源:https://blog.csdn.net/Coffeemaker88/article/details/144805817  浏览:    关键词:武汉网络营销公司哪家好_cms站群管理系统_谷歌搜索网址_seo优化网
武汉网络营销公司哪家好_cms站群管理系统_谷歌搜索网址_seo优化网

枚举类型

枚举类型是 TypeScript 相较于 JavaScript 而言特有的部分。一个简单的枚举声明如下:

enum HTTPStatus {OK,NOT_FOUND,INTERNAL_STATUS_ERROR,
}

与编译成 JavaScript 的代码相比较:
在这里插入图片描述
显然 TypeScript 非常的简洁。

尝试使用上述枚举类型:

function processHTTPStatus(s: HTTPStatus) {if(s === HTTPStatus.OK) {console.log("good response")} else {console.log("bad response")}console.log(s)
}processHTTPStatus(HTTPStatus.OK)

发现输出是:

[LOG]: "good response" 
[LOG]: 0 

原因是 enum 类型当中的值按照给定的顺序从 0、1、2 开始编排。我们可以显式地为枚举类型赋值:

enum HTTPStatus {OK = 200,NOT_FOUND = 404,INTERNAL_STATUS_ERROR = 500,
}

另外一个要解决的问题是,我们如何通过 500 来反推出 INTERNAL_STATUS_ERROR 呢?方法也非常的简单,类似于字典的查找:

function processHTTPStatus(s: HTTPStatus) {console.log(HTTPStatus[s])				// <-- 类似于字典的查找来反推枚举类型
}processHTTPStatus(HTTPStatus.INTERNAL_STATUS_ERROR)

输出为:

[LOG]: "INTERNAL_STATUS_ERROR" 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com