如何从Javascript中的枚举中获取随机值?

时间:2015-10-08 22:11:20

标签: javascript enums phaser-framework

我正在修补Phaser游戏引擎。我已经想出如何为精灵着色,所以下一步是给它一个随机颜色。如何使用枚举?

var colors = {
    RED: 0xff0000,
    GREEN: 0x00ff00,
    BLUE: 0x0000ff
}

logo.tint = colors[Math.floor(Math.random() * colors.length)];

2 个答案:

答案 0 :(得分:0)

您应首先将对象实例化为数组

var colors =[
    {RED: 0xff0000},
    {GREEN: 0x00ff00},
    {BLUE: 0x0000ff}
];

然后,获取数组的随机位置。

colors[Math.floor(Math.random() * colors.length)];

答案 1 :(得分:0)

我今天刚遇到这个问题,并能够通过此方法获得随机值:

var rand = Math.floor(Math.random() * Object.keys(colors).length);
var randColorValue = colors[Object.keys(colors)[rand]];