1
resposta

[Dúvida] Não aparecem os números sorteados

Boa tarde, Quando eu clico em sortear não aparece o texto na tela com os números sorteados

function sortear(){
    let quantidade = parseInt(document.getElementById('quantidade')).value;
    let de = parseInt(document.getElementById('de')).value;
    let ate = parseInt(document.getElementById('ate')).value;

    let sorteados = [];
    let numero;

    for (let i = 0; i < quantidade; i++) {
        numero = obterNumeroAleatorio(de, ate);
        
        while (sorteados.includes(numero)) {
            numero = obterNumeroAleatorio(de, ate);
        }
        
        sorteados.push(numero);
    }

    let resultado = document.getElementById('resultado')
    resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados: ${sorteados}</label>`;
}

function obterNumeroAleatorio(min, max){
    return Math.floor(Math.random() * (max - min + 1)) + min;
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Oi Fabio,

😀 Parece que o problema está na forma como você está exibindo a array sorteados no seu HTML. A variável sorteados é um array, e ao usar ${sorteados} diretamente dentro da template string, você está inserindo o objeto array como texto, e não seus elementos.

😁 Para exibir os números individualmente, você precisa iterar sobre o array e concatenar os valores em uma string. Uma solução simples seria usar o método join() do JavaScript:

resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados: ${sorteados.join(', ')}</label>`;

😎 Isso irá juntar os elementos do array sorteados, separando-os por vírgula e espaço.

🤔 Outra opção, mais robusta para casos com mais elementos, seria usar um loop for ou forEach para construir a string de saída.

🧐 Verifique também se os IDs quantidade, de, ate e resultado estão corretos no seu HTML.

Para saber mais: Documentação MDN sobre o método join().

Lembre-se de testar seu código passo a passo, usando o console do navegador para inspecionar o conteúdo das variáveis e identificar possíveis erros. Boa sorte!

Continue praticando e explorando o mundo da programação! 🧐