Gerar números randômicos com Javascript sem repetição

Função em para você gerar números randômicos com Javascript sem repetição.

Para isso será necessário um Array com os números que poderão ser gerados “randomicamente”.

var numeros = [1, 2, 3, 4];

Agora, utilizamos a função ‘shuffle” para gerar o número.

function shuffle(o) {
    for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
    return o;
};

var numero_gerado = shuffle(numeros);

console.log( numero_gerado  );

Segundo exemplo

Você também pode utilizar essa função, porém seu funcionamento é diferente:

function generateRan(){
    var max = 20;
    var random = [];
    for(var i = 0;i<max ; i++){
        var temp = Math.floor(Math.random()*max);
        if(random.indexOf(temp) == -1){
            random.push(temp);
        }
        else
         i--;
    }
    console.log(random)
}

console.log( generateRan() );

Altere o valor “max” de acordo com “range” de números que você querer gerar.

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *