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

No me salta la alerta

Alguien me ayuda, me pasaba también con otro código, no me salta la alerta de si erro, o no. Al hacer click en el botón no me salta ninguna alerta.

<meta charset="UTF-8">

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

<script>
    function aleatorio(){

        return Math.round(Math.ramdom()*10);

    }

    function sortearNumeros(cantidad) {
        var secretos = [];
        var contador = 1;

        while(contador<=cantidad){

            numeroAleatorio = aleatorio();
            secretos.push(numeroAleatorio);
            contador++;

        }

        return secretos

    }


    var secretos = sortearNumeros(4);

    console.log(secretos)


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

    function verificar() {

        var encontrado = false;

        for(var posicion = 0; posicion < secretos.length; posicion++){

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

                alert("Usted acertó");
                encontrado = true;
                break;

            }

        }

        if (encontrado == false) {

            alert("Usted erró");

        }

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

    }    

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


</script>
1 respuesta

¡Hola Harold! Parece que el problema está en la función aleatorio(). En la segunda línea, escribes Math.ramdom() en lugar de Math.random(), lo que provoca un error de sintaxis. Por lo tanto, la función aleatorio() no devuelve un número aleatorio y, como resultado, la función sortearNumeros() no puede generar los números secretos. Como resultado, el código no puede verificar si el número ingresado por el usuario coincide con los números secretos, lo que explica por qué no se muestra ninguna alerta. Para solucionar este problema, simplemente cambia Math.ramdom() por Math.random() en la segunda línea de la función aleatorio(). ¡Espero haber ayudado y buenos estudios!