$rowCount = 40 ;
for (var $j = 0; $j < $rowCount -1; $j++) {
var currentNum = #something
}
我需要一个机制,我可以以一种方式循环,我将以随机的方式将值应用于currentNum
。
例如:在循环结束时,currentNum
的值应为(0....39)
。但它不应该从0,1,2,3,4,5,6,7,8,.....39
开始应用。
它应该以{{1}}之类的随机方式应用,它应涵盖39, 4, 5,17, 28 , 16 ....
中的所有数字。我认为这可以使用java中的0-40
来实现,但是如何在javascript中实现?
答案 0 :(得分:0)
var numbers = Array(rowCount);
for(var i = 0; i < rowCount; i++) numbers[i] = i;
shuffle(numbers); // randomly shuffle array elements
for (var $j = 0; $j < $rowCount -1; $j++) {
var currentNum = numbers[i];
}
答案 1 :(得分:0)
您可以尝试这样的事情:
var _data = [];
for (var i = 0; i < 40; i++) {
_data.push(i);
}
var result = [];
_data.slice().forEach(function(){
result.push(getRandomValue(_data))
});
function getRandomValue(arr,i) {
var r = Math.floor(Math.random() * arr.length);
var result = arr[r];
arr.splice(r, 1);
return result;
}
document.write("<pre>" + JSON.stringify(result,0,4) + "</pre>");