Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

Código con menos variables

Buenas. Pude construir el código sin incluir la variable "encontrado". Solo modifiqu´el segundo IF. Basicamente hace lo mismo (como lo veo yo). Mi pregunta es si poner la variable booleana mejora el código, lo hace mas ordenado o lo mejora para mantenimiento. Porque no entiendo el sentido de agregarla.

 <meta charset = "UTF-8">

<input/>
<button>Verificar si acertó con el secreto</button>

<script>

    var secreto = [3,5,7,9]
    var input = document.querySelector("input");
    input.focus();

    function verificar() {

        for (var posicion = 0; posicion <= 3; posicion++) {

            if (parseInt(input.value) == secreto[posicion]) {

            alert("Ud acertó");
            break;
            }
        }

        if (parseInt(input.value) != secreto[posicion]) {  //If modificado

            alert("Ud erró");
        }

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

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

</script>
2 respuestas
solución!

Hola Cecilia!

En este ejemplo tan sencillo no vas a notar ninguna diferencia entre usar la variable booleana o no. Pero tiene varias contras no usarla, primero que estás repitiendo código y eso siempre se trata de evitar. Segundo que es mucho menos legible. Y tercero que es mucho más costoso en términos de procesamiento evaluar toda esa condición que evaluar solo una variable booleana ( 1 o 0 ). Estas accediendo al valor del input, parseandolo a int, accediendo al valor de posicion y luego al valor de secreto correspondiente, para finalmente hacer la comparación. Esto si estás haciéndolo millones de veces en un sistema más grande, tiene grandes costos de procesamiento y tiempo.

Espero haberte ayudado! Slds.

Se entiende perfecto José. Muchas gracias.