下面我们来定义Week的枚举:复制代码如下: if(weekday的类型==' undefined '){ var weekday={ };WeekDay。星期日=0;WeekDay。星期一=1;WeekDay。星期二=2;WeekDay。wedesay=3;WeekDay。星期四=4;WeekDay。星期五=5;WeekDay。星期六=6;}测试如下:alert(WeekDay。星期一);//-输出: 1当然,我们有更直观的方式。以DOM文档节点类型的定义为例,定义方法如下:复制代码如下:IF(节点类型==' undefined '){ var node={ element _ node 33601,attribute _ node33602,text _ node33603,CDATA_SECTION_NODE: 4,ENTITY_REFERENCE_NODE: 5,ENTITY_NODE: 6,PROCESSING _ INSTRUCTION _ node 3360 7,COMMENT _ NODE://-output : true说明上面的Node定义可以用来纠正IE不支持的DOM节点类型常量(其他主流浏览器都支持)。类似C类语言,上面两个例子的枚举对应属性值都是可塑的。你可能会想,能不能定义为其他类型?要回答这个问题,我们必须首先知道我们的枚举实现的原理。如前所述,这里使用的是JSON,JSON可以使用任何类型的值!因此,Js中的枚举可以是任何类型的值。以下面的String类型为例:复制代码如下: if (type of color==' undefined '){ var color={ color 1: ' red '、color2:' green '、color:' white '、color43360' black'}}测试如下:alert(color . color 1 .///-output : red定义了一个具有更复杂类型的PersonList枚举如下:复制代码如下: if(type