Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] Se estanco mi codigo, siempre aparece el mismo numero ganador, en cada vuelta

<meta charset="UTF-8">

<input/>
<button>Adivina el numero <button/>

<script>


    var input = document.querySelector("input");
    var secretos = Math.round(Math.random()*10);

    function verificar () {

        if (input.value == secretos){
        alert("Usted acerto");
        break;

        } else {
        alert("Usted erro, el numero es " + secretos);    
        }
        input.value ="";
        input.focus();
    }

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

</script>
1 respuesta

Buenas, ahí el problema es donde declaraste el var secretos, deberia estar dentro de la función verificar. Ello sucede por que tal como declaraste el var secretos obtiene su valor al cargar la pagina y se queda con el, pero si lo pones dentro de una función el valor carga con cada llamada de la función.

<script>


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


    function verificar () {
        var secretos = Math.round(Math.random()*10);
        if (input.value == secretos){
        alert("Usted acerto");
        break;

        } else {
        alert("Usted erro, el numero es " + secretos);    
        }
        input.value ="";
        input.focus();
    }

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

</script>