Amigos,
estou tentando refazer o exercício final mas com algumas alterações. Segue código.
<meta charset="UTF-8">
<script>
    function geraNum() {
        return Math.round(Math.random()*10);
    }
    function sorteiaNum(quantidadeMaxima) {
        var totalNumerosSorteados = 0;
        var numGerados = [];
        while(totalNumerosSorteados < quantidadeMaxima) {
            var numeroTeste = geraNum();
            for ( var i=0 ; i<numGerados.length ; i++) { 
                verifica = true;
                while(verifica) {
                    if(numeroTeste > 0 && numeroTeste <10){ // Validando somente números entre 1 ~ 9.
                        if(numeroTeste !== numGerados[i]) {
                            break;
                        }
                    }
                    numeroTeste = geraNum();
                    i=0;
                }
            }
            numGerados.push(numeroTeste);
            totalNumerosSorteados++;
        }
        return numGerados;
    }    
    var numerosSorteados = sorteiaNum(6);
    console.log(numerosSorteados.sort());
</script>No código abaixo, na linha 24 onde há um comentário, o comportamento que eu espera obter era: a estrutura condicional "if" apenas valida um número entre 1 e 9, fazendo que, ao final do laço, apenas números não repetidos e dentro do intervalo citado farão parte do array "numGerados". Ao abrir a página verifiquei que embora os números não se repetiam, os números 0 e 10 aindam continuavam a ser inseridos no array "numGerados".
Agradeço pela força!
 
             
            