1
resposta

Nao acertei de primeira

alert('Boas vindas ao jogo do número secreto');
let numeroSecreto = 5;
let chute = prompt ('Digite um número ');

console.log(numeroSecreto);
console.log(chute);

if (chute == numeroSecreto){
    alert ('Você acertou o número ' + numeroSecreto);
} else {
    alert ('O número ' + chute + ' Não é o número secreto!');
}

Os dois console.log() que utilizei estão funcionando, mas antes tinha colocado a solicitação da variável chute entre os dois console.log e não funcionou. Por que isso acontece?

1 resposta

Opa Marcelo! E aí, tudo ok contigo?

Muito bacana o seu código para o jogo do número secreto! Vi que você adicionou alguns console.log() para acompanhar o fluxo do programa e monitorar as variáveis, excelente prática!

Sobre a questão dos console.log(), é normal que você tenha percebido diferenças quando colocou a solicitação da variável chute entre eles. A ordem de execução do código faz um pouco de diferença. Se você coloca o console.log(chute) antes de solicitar o valor com o prompt, ele acaba sendo exibido antes mesmo do usuário inserir o valor, ficando como undefined.

Então, o ajuste que você fez, colocando a solicitação do chute antes dos console.log(), está perfeito! Agora, os console.log() conseguem mostrar o valor correto que o usuário digitou.

Agora, se você colocou a variável chute entre os console.log() assim:

console.log(numeroSecreto);
let chute = prompt ('Digite um número ');
console.log(chute);

Ele deveria funcionar normal, uma vez que a variável deve receber um valor antes de passar para a execução do console.log(), portanto ele não seria undefined, contudo pode ocorrer uma situação onde o JavaScript passa para a execução do console.log() antes de receber o valor coletado pelo prompt(), isso pode acontecer devido a motivos variados, mas podem acontecer, assim como o primeiro alert pode ser pulado e já ser carregado o prompt direto. Por isso situações variadas podem acontecer sem motivo aparente. Que podem ter sido o seu caso. Assim é ideal manter como você deixou em seu código, com a variável chute antes dos console.log().

Em um contexto geral seria isso. Se tiver mais dúvidas ou se precisar de mais alguma orientação, é só chamar!

Estou por aqui para ajudar. Abraços e bons estudos!