“Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site” Kod odpowiedzi

Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site

function getNumber() {
    var min = 0,
        max = 4,
        random;

    do {
        random = Math.floor(Math.random() * (max - min)) + min;
    } while (random === getNumber.last);
    getNumber.last = random;
    return random;
};

var i;
for (i = 0; i < 100; i++) {
    console.log(getNumber());
}
Med

Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site

function setRandomInterval(min, max) {
    var last;
    if (min >= max) {
        throw 'Selected interval [' + min + ', ' + max + ') does not work for random numbers.';
    }
    return function () {
        var random;
        do {
            random = Math.floor(Math.random() * (max - min)) + min;
        } while (random === last);
        last = random;
        return random;
    };
}

var i,
    getRandom = setRandomInterval(0, 4);

for (i = 0; i < 100; i++) {
    console.log(getRandom());
}

setRandomInterval(4, 4); // throw error
Med

Odpowiedzi podobne do “Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site”

Pytania podobne do “Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site”

Więcej pokrewnych odpowiedzi na “Jak zapobiec metodom losowej podania więcej niż dwóch samych numerów JS Site” w JavaScript

Przeglądaj popularne odpowiedzi na kod według języka

Przeglądaj inne języki kodu