Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro no código

Olá, eu estava escrevendo o código do video 2 da aula 9, porém o meu console identificou um erro no numerla 0 da linha 24, não consegui achar o erro, apaguei o que eu tinha feito diferente do professor e fiz igual ao dele mas mesmo assim continua dando erro

<meta charset="UTF-8">
<input/>
<button>Compare!</button>

<script>

    var input = document.querySelector("input");
    var button = document.querySelector("button");

    var segredos = segredo(4)    

    function sorteia () {
        return Math.round(Math.random() * 10);

    }

    function segredo(numero) {
        var vezes = 1
        var segredos2 = []
        while(vezes <= numero) {
            var jaTem = false
            var aleatorio = sorteia();
            for(var posicao = 0; posicao < segredos2.length; posicao++) {
                if(aleatorio == segredos[posicao]) {
                var jaTem = true
                break;
                }
            }
            if(jaTem == false) {
                segredos2.push(aleatorio)
                vezes++
            }
        };
        return segredos2
    }


    function verifica() {
        var acertou = false
        for(var posicao = 0; posicao < segredos.length; posicao++) {
            if(input.value == segredos[posicao]) {
                alert("Parabéns, você acertou!");
                var acertou = true
            }

        }
        if(acertou == false) {
                alert("Você ERRRRROU!!")
        }
    }





    console.log(segredos)


    button.onclick = verifica;
</script>
2 respostas

Qual é o erro de agora? Pelo que eu vi, você não chama nenhum evento quando você clica no botão e faz um for com um Array em branco.

solução!

Consegui achar meu erro, obrigado! =D eu tinha esquecido de por segredos2... pus apenas segredos, então ele remetia à um Array ainda inexistente!