我从getRandom(1,10)
得到1到10之间的随机生成数字,但我不想两次使用相同的数字。
为了防止这种情况,我保存了数组used
中的数字
现在我想检查我得到的新数字是否在该数组中
如果没有继续下去,
如果是,则重新开始(获取新号码等)
我现在缺少的是应该重新开始的部分。或者这应该有用吗?
jQuery(document).ready(function($){
var i=0;
while (i<21){
var used = new Array(20);
for(a=0; a<20; a++) {
var number = getRandom(1, 20);
used[a] = number;
}
var tf = inArray(number,used);
//Check if number is inside the
if(tf==false){
//If not
i++;
}else{
//If it is
i--;
}
}
function inArray(Item,arr) {
for(p=0;p<arr.length;p++) {
if (arr[p]==Item) {
return true;
}
}
return false;
}
});
答案 0 :(得分:0)
// create pool of numbers
var pool = [];
for (var i=1; i<=20; i++)
pool.push(i);
// pop off a random element of the array
var some_random_number = pool.splice(Math.floor(Math.random()*pool.length), 1)[0]
// repeat until pool is empty.