Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

[Sugerencia] Solución al problema presentado al final

No sé si en el próximo video se aborda la misma solución que yo encontré para solventar el error que se dio al final. Yo realicé este código a la mitad del video porque me puse a probar la función antes de avanzar y me topé con el mismo error. Al querer solucionarlo modifiqué el código de la siguiente manera, utilizando lo que ya hemos aprendido hasta ahora y de una manera sencilla:

function generarNumeroSecreto() {
    let numeroGenerado = Math.floor(Math.random()*10 + 1);
    
    if (listaNumerosSecretos.includes(numeroGenerado)) {
        if (listaNumerosSecretos.length == 10) {
            asignarTextoElemento('p', "Has descubierto todos los números secretos");
            document.getElementById('intentar').setAttribute('disabled', 'true');
        } else {
            return generarNumeroSecreto();
        }
    } else {
        listaNumerosSecretos.push(numeroGenerado);
        return numeroGenerado;
    }
}

Básicamente agregue una condición más, en donde si el numero generado esta en la lista, va a ver primero si el tamaño de la lista es 10 y en caso afirmativo va a deshabilitar el botón de intentar y a mostrar un mensaje explicativo al usuario, para que él mismo entienda lo que sucedió y no tenga manera de seguir generando nuevos números. Así mismo, si esta condición se cumple, ya no va a volver a ejecutar la función porque dicho evento es la condición alternativa, la cual no se ejecutará debido a que se cumplió la primera condición que acabo de explicar.

No sé si esta es la solución que se da en el próximo video, pero la testeé bastante y no me salió ningún resultado fuera del esperado. Lo dejo aquí por si a alguien le sirve :)

PD: Para poder seleccionar el botón de "intentar", fui al HTML y le agregué el id por el que lo estoy invocando en el código, así que si quieres probar el código debes hacer lo mismo o sino no funcionará.

2 respuestas

¡Estimado estudiante!

Aprecio tu participación en el foro. Quiero recordarte que este espacio está pensado principalmente para aclarar dudas y hacer preguntas. No es necesario compartir cada actividad detalladamente.

¡Gracias por tu comprensión y por contribuir a hacer del foro un lugar enfocado en el intercambio útil y constructivo! Si prefieres discutir o compartir comentarios sobre el contenido te invitamos a unirte a nuestra comunidad en Discord.

Saludos.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

Lo entiendo Luis, mi intención no era estorbar en la dinámica del foro sino todo lo contrario. Lo hice porque, primeramente, está el tópico también para brindar sugerencias en el foro, así como quejas o bugs, y no solo preguntas. Por otro lado, personalmente aprovecho mucho los aportes que hacen otros a la comunidad de la que hago parte para adquirirlo en mi aprendizaje, y es por eso que comparto también sugerencias para que otros aprovechen mi aporte como lo hago yo con los demás.

Esto no es ningún tipo de excusa, sino simplemente dar a conocer mi contexto para que sea quizá aprovechado en pro de organizar el foro hacia el enfoque que le quieren dar; únicamente preguntas y respuestas (sea retirando las otras opciones de tópicos o con un mensaje antes de hacer una publicación que diga explícitamente que solo se pueden publicar preguntas, o lo que vean más conveniente para evitar confusiones que desvíen la dinámica que quieren conseguir con el foro).