1
resposta

[Dúvida] Pq precisa de uma função pra gerar o número aleatório?

O número aleatório não poderia ser gerado e armazenado diretamente em uma "let"? por que precisa ser uma variável? No curso passado ele foi gerado em uma variável

let numeroSecreto = gerarNumeroAleatorio();

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

exibirTextoNaTela('h1', 'Jogo do número secreto');
exibirTextoNaTela('p', 'Escolha um número entre 1 e 10');

function verificarChute() {
    console.log(numeroSecreto);
}

function gerarNumeroAleatorio() {
    return parseInt(Math.random() * 10 + 1);
}
1 resposta

Oi, Iury! Tudo bem?

Respondendo objetivamente, poderia, porém a razão pela qual usamos uma função para gerar o número aleatório é para exemplificar como manter o nosso código organizado e fácil de entender, o que é especialmente útil em programas maiores, onde a lógica pode se tornar bastante complexa.

Na função gerarNumeroAleatorio(), por exemplo, toda vez que precisarmos de um número aleatório, podemos simplesmente chamar essa função, tornando o código mais legível, pois é imediatamente claro o que a função faz só de olhar para o seu nome. Somado a isso, ao armazenar o número em uma variável, podemos acessá-lo sempre que precisarmos, sem ter que gerar um novo número aleatório cada vez.

Para ilustrar, podemos imaginar que se tivermos um código com muitas linhas e em diferentes partes do código precisarmos gerar números aleatórios, ao invés de de repetir o mesmo código em todas essas partes, podemos apenas chamar a função gerarNumeroAleatorio() em diferentes variáveis, por exemplo: let numeroSecreto1 = gerarNumeroAleatorio(); para gerar um número aleatório, let numeroSecreto2 = gerarNumeroAleatorio(); para gerar outro, tornando o código mais limpo e mais fácil de manter.

Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓