Sho*_*000 9 javascript enums phaser-framework
我正在修补 Phaser 游戏引擎。我已经弄清楚如何为精灵着色,所以下一步是给它一个随机颜色。我将如何使用枚举来做到这一点?
var colors = {
RED: 0xff0000,
GREEN: 0x00ff00,
BLUE: 0x0000ff
}
logo.tint = colors[Math.floor(Math.random() * colors.length)];
Run Code Online (Sandbox Code Playgroud)
小智 12
我今天刚刚遇到这个问题,并且能够通过以下方式获得随机值:
var rand = Math.floor(Math.random() * Object.keys(colors).length);
var randColorValue = colors[Object.keys(colors)[rand]];
Run Code Online (Sandbox Code Playgroud)
小智 1
您应该首先将对象实例化为数组
var colors =[
{RED: 0xff0000},
{GREEN: 0x00ff00},
{BLUE: 0x0000ff}
];
Run Code Online (Sandbox Code Playgroud)
然后,获取数组的随机位置。
colors[Math.floor(Math.random() * colors.length)];
Run Code Online (Sandbox Code Playgroud)