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

Comparação Array com variável

var segredos = [5,7,10,2,3];

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

    function verifica() {

            var achou = false;

            for(var posicao = 0; posicao < segredos.length; posicao++) {

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

                    alert("Você ACERTOU!");
                    achou = true;
                    break;

Minha dúvida é: Por que escrevemos array[variável] para que a repetição seja executada corretamente. E não simplesmente input.value == array ?

3 respostas
solução!

Boa noite! Como vai?

Se vc fizesse input.value == array o que seria feito é a comparação do valor do input com o array em si e não com um valor que está dentro do array que é o que se deseja fazer ao fazer input.value == array[variavel].

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos!

Acredito que a repetição será executada independente da comparação "input.value == segredos[posicao]".

Essa comparação apenas determina se o valor do input está presente em algum elemento do array.

Já com relação à comparação "input.value ==segredos" não teria sentido pois o input.value é um tipo primitivo, já o segredos é uma coleção. Por isso é necessário percorrer essa coleção para realizar a comparação.

Muito obrigado pelo feedback. Agradeço muito.