JSFiddle - React, Tailwind, and code Playground
by lbstr
JavaScript
var history = {};
var getUniqueRandom = function(min, max){
var a = [];
var i = max;
// build an array of available numbers
while(i >= min){
if(history[i] === undefined){
a.push(i);
}
i--;
}
// pick a random index
var randomIndex = Math.floor(Math.random() * a.length);
var result = a[randomIndex];
// save it and return it
history[result]=1;
return result;
};
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));
alert(getUniqueRandom(0, 15));