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

[Dúvida] Solução diferente do instrutor

Boa tarde,

Percebi que a lógica que implementei difere um pouco da que o instrutor apresentou. Em vez de utilizar o return, optei por permitir que o fluxo continue com o else caso a condição do if não seja atendida. Gostaria de saber se essa abordagem apresenta algum problema em termos de boas práticas de programação.

Segue abaixo o código que utilizei:

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;

    if(de >= ate){
        alert('O valor inserido no campo "Do número" não pode ser maior ou igual que o valor do campo "Até o número". Por favor, revise os números inseridos e refaça o sorteio.')
    } else {

    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>`
    alterarStatusBotaoSortear();
    alterarStatusBotaoReiniciar();
    }
}
1 resposta
solução!

Oi Kley!

A abordagem que você usou com o else não está errada, e o código funciona bem. Mas, quando usamos o return return em vez de else pode deixar o código mais direto e fácil de seguir, principalmente quando se trata de situações que devem interromper a execução da função.

Mas de toda forma nesse primeiro momento é bacana, "fazer acontecer", e foi muito bacana sua solução.

Continue praticando e explorando cada vez mais!

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

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