因为 JavaScript 中并没有存在枚举类型,因此为了能够在大多数浏览器中正常运行,上面定义的 RequestMethod 枚举会被编译成以下 ES5 代码:
"use strict";
var RequestMethod...枚举时,没有使用初始化器,因此 Get 的值为 0,Post 的值为 1,依次类推。...ES5 代码可知,默认还是从 0 开始,当发现中间成员重新定义了枚举的初始值,下一个值将从新的初始值开始递增,每次的增量为 1。...当一个表达式满足下面条件之一时,它就是一个常量枚举表达式:
一个枚举表达式字面量(主要是字符串字面量或数字字面量);
一个对之前定义的常量枚举成员的引用(可以是在不同的枚举类型中定义的);
带括号的常量枚举表达式...;
一元运算符 +, -, ~ 其中之一应用在了常量枚举表达式;
常量枚举表达式做为二元运算符 +, -, *, /, %, >, >>>, &, |, ^ 的操作对象。