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

Dá uma ajuda ai.

<meta charset = "UTF-8">

<input/>
<button>Compare com o meu segredo</button>

<script>
    var segredos = [5,7,10,2];

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

    function verifica(){    

        for ( var posicao = 0;  posicao < 4; posicao++) {

            if(input.value == segredos [posicao]){

                alert("Você acertou!!!");

            } else {
                alert("Você errou!!!");
            }

            input.value = "";
            input.focus();
        }
    }

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

    button.onclick = verifica;

</script>
7 respostas

Oi Allison, tudo bem ?

Como podemos te ajudar cara ?

A tag posicao não lê os meus arrays

Não sei se é seu problema... mas dentro do seu "for", a cada interação, vc apaga o valor do input:

input.value = "";

Desta forma, após a primeira verificação o alert será sempre: "Você errou!!!". Isso porque você vai comparar, após a primeira iteração, sempre "" com o valor do índice no seu array "segredos":

...
// ( "" == 7 ) seria a segunda iteração
if(input.value == segredos [posicao]){
...

Se esse for o problema, coloque essa linha fora do fechamento da chave referente ao "for".

solução!

Oi Allisson, tudo bem ?

Vi aqui, é bem sútil seu erro.

Dentro do for você tá limpando o valor do input, você precisa fazer isso fora do for

   for ( var posicao = 0;  posicao < 4; posicao++) {

            if(input.value == segredos [posicao]){

                alert("Você acertou!!!");

            } else {
                alert("Você errou!!!");
            }

        }


            input.value = "";
            input.focus();

Testa e fala para gente se deu tudo certo.

maldita chave!!!!

Valeu

O que precisar pode abrir outro tópico.

Bons estudos

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software