在JavaScript中定义枚举的首选语法是什么?

在JavaScript中定义枚举的首选语法是什么?

在JavaScript中定义枚举的首选语法是什么?就像是:

my.namespace.ColorEnum = {
    RED : 0,
    GREEN : 1,
    BLUE : 2}// later onif(currentColor == my.namespace.ColorEnum.RED) {
   // whatever}

还是有更优选的成语?


慕的地8271018
浏览 637回答 3
3回答

Smart猫小萌

由于1.8.5可以密封和冻结对象,因此将上面定义为:var DaysEnum = Object.freeze({"monday":1, "tuesday":2, "wednesday":3, ...})要么var DaysEnum = {"monday":1, "tuesday":2, "wednesday":3, ...}Object.freeze(DaysEnum)瞧!JS枚举。注意:我在2011年写了它,但它是2019年 - 用于const防止覆盖你的枚举词典。但是,这并不会阻止您为变量分配不需要的值,这通常是枚举的主要目标:let day = DaysEnum.tuesday day = 298832342 // goes through without any errors确保更强的类型安全性(使用枚举或其他方式)的一种方法是使用TypeScript或Flow等工具。资源不需要引用,但我保持它们的一致性。

红颜莎娜

这不是一个很好的答案,但我会说,个人工作得很好话虽如此,因为值是什么并不重要(你使用了0,1,2),我会使用一个有意义的字符串,以防你想输出当前值。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript