使用 Object.freeze() 进行枚举定义

Version >= 5.1

JavaScript 不直接支持枚举器,但可以模仿枚举的功能。

// Prevent the enum from being changed
const TestEnum = Object.freeze({
    One:1,
    Two:2,
    Three:3
});
// Define a variable with a value from the enum
var x = TestEnum.Two;
// Prints a value according to the variable's enum value
switch(x) {
    case TestEnum.One:
        console.log("111");
        break;

    case TestEnum.Two:
        console.log("222");
}

上面的枚举定义,也可以写成如下:

var TestEnum = { One: 1, Two: 2, Three: 3 }
Object.freeze(TestEnum);

之后,你可以像以前一样定义变量并进行打印。