私が持っている:javascriptでその範囲内のすべての数値に対して特定の範囲の一意のランダムな整数を取得するにはどうすればよいですか?
function getRandomInt(min, max){
return Math.floor(Math.random() * (max - min + 1)) + min;
}
をしかし、問題は、私は、配列内の要素で何かの人口をランダム化したい(そう、彼らは同じ順序で私が移入午前事で毎回表示されません)ので、私は必要です返される数字が今までの他の数字と比較して一意であることを保証する。
ので、代わりの:
for(var i = 0; i < myArray.length; i++) {
}
私が持っている:
var i;
var count = 0;
while(count < myArray.length){
count++;
i = getRandomInt(0, myArray.length); // TODO ensure value is unique
// do stuff with myArray[i];
}
あなたは正しいです!私は答えとしてマークすることができますので、コードを含めることができます:function shuffle(array){ var tmp、current、top = array.length; if(top)while( - top){ current = Math.floor(Math.random()*(トップ+ 1)); tmp =配列[現在]; 配列[現在] =配列[先頭へ]; array [top] = tmp; } 戻り配列。 } – markmnl