Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Bug] variavel do numero continua igual mesmo que eu reinicie o jogo

let listaDeNumerosSorteados= []; 
let numeroSecreto = gerarNumeroAleatorio();
let tentativas = 1;

function exibirTextoNaTela (tag, texto){
let campo = document.querySelector(tag);
campo.innerHTML = texto;
}

function exibirmensagemInicial() {
    exibirTextoNaTela("h1", "jogo do número secreto");
    exibirTextoNaTela("p", " escolha um número entre 1 e 10");
    
}

exibirmensagemInicial();

function gerarNumeroAleatorio() {
   let numeroEscolhido = parseInt(Math.random() * 10 + 1);
   if (listaDeNumerosSorteados.includes(numeroEscolhido)){
    return gerarNumeroAleatorio();
   } else{
    listaDeNumerosSorteados.push(numeroEscolhido);
    console.log (listaDeNumerosSorteados);
    return numeroEscolhido;
   }

}

function verificarChute() {
    let chute = document.querySelector('input').value;
    if (chute == numeroSecreto) {
        exibirTextoNaTela('h1', 'Acertou!') 
        let palavratentativa = tentativas > 1? 'tentativas': 'tentativa';
        let mensagemtentativas = `Voce descobriu o numero secreto com ${tentativas} ${palavratentativa}!`;
        exibirTextoNaTela('p', mensagemtentativas);
        document.getElementById('reiniciar').removeAttribute('disabled');
    } else {
        if (chute>numeroSecreto) {
        exibirTextoNaTela('p', ' O numero secreto é menor')
        } else {
            exibirTextoNaTela('p', 'O numero secreto é maior')
        }
        limparCampo ()
        tentativas++;

    }
    
}

function limparCampo() {
    chute = document.querySelector('input');
    chute.value = '';
}
function reiniciarJogo() {
   listaDeNumerosSorteados= [];
   numerosecreto = gerarNumeroAleatorio();
   limparCampo();
   tentativas = 1;
   exibirmensagemInicial();
   document.getElementById('reiniciar').setAttribute('disabled', true);
}
1 resposta
solução!

Boa tarde Pedro! Tudo bem com você?

O comportamento apresentado, onde não é gerado um novo número aleatório após clicar no botão "Novo Jogo" para reiniciar o jogo, está acontecendo devido a um pequeno erro de digitação na função reiniciarJogo.

No seu código, você escreveu numerosecreto (com o s em minúsculo) em vez de numeroSecreto (com o S em maiúsculo) dentro da função reiniciarJogo. JavaScript é sensível a maiúsculas e minúsculas, então numerosecreto é tratado como uma variável diferente de numeroSecreto.

Basta fazer a correção da variável numeroSecreto deixando com apresentado abaixo:

function reiniciarJogo() {
   listaDeNumerosSorteados = [];
   numeroSecreto = gerarNumeroAleatorio(); // Corrigido aqui
   limparCampo();
   tentativas = 1;
   exibirmensagemInicial();
   document.getElementById('reiniciar').setAttribute('disabled', true);
}

Após a correção, salve o arquivo "app.js" e recarregue a página HTML pressionando F5.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!