1. 犀牛前端部落首页
  2. Javascript百科

js中如何定义一个"枚举"类型

前言

Javascript1.8.5开始可以使用Object.freeze来冻结对象实现一个类似”枚举”类型。

实现代码如下:

/**
 * 时间:2019年8月18日
 * 前端教程: https://www.pipipi.net/ 
 */
var DaysEnum = Object.freeze({"monday":1, "tuesday":2, "wednesday":3, ...})

或者这样:

/**
 * 时间:2019年8月18日
 * 前端教程: https://www.pipipi.net/ 
 */
var DaysEnum = {"monday":1, "tuesday":2, "wednesday":3, ...}
Object.freeze(DaysEnum)

这就是js中的”枚举”!是不是很简单?

不过现在是2019年了,我们还可以使用const来定义对象。

完整代码

完整的实现代码如下:

/**
 * 时间:2019年8月18日
 * 前端教程: https://www.pipipi.net/ 
 */
var Status = Object.freeze({
    "Connecting":0,
    "Ready":1,
    "Loading":2,
    "Processing": 3
});

console.log(Status.Ready) // 1

console.log(Object.keys(Status)[Status.Ready]) // Ready

原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/2263.html

发表评论

登录后才能评论