在JavaScript中随机播放一个数组?

时间:2010-01-09 04:23:24

标签: javascript random numbers

我需要一个2d数组[9,16],其中144个数字来自1-> 36,随机顺序(所以每个数字重复4次)。

3 个答案:

答案 0 :(得分:4)

类似的东西:

sourcearr = array();
for(i = 0; i < 36; i++){
  for(j = 0; j < 4; j++){
      sourcearr[i+j] = i;
   }
}

sourcearr = shuffle(sourcearr)

k = 0;
myrandarr = array();
for(i = 0; i < 9; i++){
    myrandarr[i] = array();
    for(j = 0; j < 16; j++){
        myrandarr[i][j] = sourcearr[k++];
    }
}

您使用shuffle

答案 1 :(得分:2)

假设您不关心分发,只需存储

的结果
Math.floor(Math.random()*36) + 1

对于数组的每个元素

答案 2 :(得分:0)

怎么样:

var source = array();
var shuffled = array();

for(var i=0;i<4;i++)
{
  for(var j=0; j<36;j++)
  {
    source[i*j] = j+1;
  }
}

while( source.length > 0 )
{
  var index = Math.floor(Math.random()*source.length);
  var element = source.splice(index,1);
  shuffled.push(element);
}