我正在尝试将数字1-6随机化。
我已经拥有以下代码:
for (var a=[],i=0;i<6;++i) a[i]=i;
function shuffle(array) {
var tmp, current, top = array.length;
if(top) while(--top) {
current = Math.floor(Math.random() * (top + 1));
tmp = array[current];
array[current] = array[top];
array[top] = tmp;
}
return array
}
a = shuffle(a);
console.log(shuffle(a));
但是,在我的控制台中,这包括数字0并且不包括6。 有没有办法让这些数字的范围从1到6而不是0-5?
答案 0 :(得分:1)
你已经完成了
for (var a=[],i=0;i<6;++i)
a[i-1]=i;
相反,你可以做到
for (var a=[],i=1;i<=6;++i)
a[i-1]=i;
答案 1 :(得分:0)
在一行
var random = Math.floor(Math.random() * 6) + 1;
alert(random);
应该是
var temp = [];
for(i=0; i<=6; i++){
var random = Math.floor(Math.random() * 6) + 1;
temp[i] = random;
}
console.log(temp);
答案 2 :(得分:-1)
尝试以下:
Math.floor((Math.random() * 6) + 1);
加一个必须在随机后完成;)