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

[Duda] Problemas console.log

¡Hola! Estoy probando realizar la comparación y verla en console.log. No obstante no me arroja resultados en la consola cuando la comparación es falsa.
Solo cuando es verdadera me sale True.

let numeroSecreto = 5;
let numeroUsuario = prompt("Me indicas un número entre 1 al 10 por favor:");

console.log(numeroUsuario);

if (numeroUsuario == numeroSecreto) {
    //Acertamos el número
    alert(`Acertaste, el número es ${numeroUsuario}.`);
    //Incorrecto el número

    //Ver en la consola la comparación
    console.log(`Resultado comparación`, numeroUsuario == numeroSecreto);
} else {
    alert("Lo siento, no acertaste.")
}

Como se ve en la imagen 3 no es el numeroSecreto, por lo que no hay resultados.
Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad
En cambio cuando el numeroUsuario es el mismo que numeroSecreto en este caso 5 sí sale un mensaje.
Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

3 respuestas

Claro, lo que pasa es que tu console.log está dentro del if que solo se ejecuta cuando la comparación es verdadera.

Por eso, si numeroUsuario no es igual a numeroSecreto, el bloque else se ejecuta y el console.log nunca se alcanza.

debería ser:

let numeroSecreto = 5;
let numeroUsuario = prompt("Me indicas un número entre 1 al 10 por favor:");

console.log(numeroUsuario);
console.log(`Resultado comparación:`, numeroUsuario == numeroSecreto);

if (numeroUsuario == numeroSecreto) {
    alert(`Acertaste, el número es ${numeroUsuario}.`);
} else {
    alert("Lo siento, no acertaste.");
}

Tal cual como comenta Estudiante la razón es correcto, sin embargo, más allá de este caso, también es oportuno aprender las comparaciones estrictas en JavaScript.

si comparas 5 == '5', te va a devolver true.
si comparas 5 === '5' te va a devolver false.

Te invito a revisar el material que puedas conseguir con respecto a esto, ya que te ahorrarás problemas en tus desarrollos futuros.

Tu console.log está dentro del if, por eso solo aparece cuando la condición es verdadera. Ponlo fuera del if para que siempre se ejecute. También te recomiendo usar comparación estricta (===) para evitar problemas con tipos de dato