Olá, Ivson! Tudo bem?
O problema está na forma como você está comparando o chute
com o numeroSecreto
. A função prompt()
sempre retorna uma string, mesmo que o usuário digite um número. Portanto, você está comparando uma string com um número, o que geralmente resulta em false
em JavaScript.
Como corrigir:
Você precisa converter o chute
para um número antes de compará-lo com o numeroSecreto
. Você pode fazer isso usando a função parseInt()
ou parseFloat()
.
alert('Boas vindas ao jogo do Número Secreto');
let numeroSecreto = 5;
console.log('numeroSecreto');
let chute = parseInt(prompt('Escolha um número entre 1 a 10')); // Convertendo para número
// se chute for igual ao número secreto
if (chute === numeroSecreto) { // Usando === para comparação estrita
alert('Isso ai! voce descobriu o numero secreto (5)');
} else {
alert('Voce errou');
}
Explicação da correção:
parseInt(prompt(...))
: A função parseInt()
converte a string retornada por prompt()
para um número inteiro.===
: É recomendável usar o operador de igualdade estrita (===
) em vez do operador de igualdade abstrata (==
). O ===
verifica se os valores e os tipos são iguais, enquanto o ==
faz a conversão de tipo antes de comparar os valores.
Espero ter ajudado.