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

[Projeto] Resolução do exercício antes da aula.

para impedir que se add espaços vazios e que nomes repetidos inclusive nomes com letras maiúscula e minúsculas.:

function adicionar() {

    //para impedir que add espaços vazios
    if (amigo.value =="") {
        return alert('Digite um nome');
    }
    
     //Impede que add nomes repetidos e tambem normaliza tudo como minusculo.
    if (amigos.map(i => i.toLowerCase()).includes(amigo.value.toLowerCase())) {
        return alert("Este nome ja foi adicionado");
    }

    amigos.push(amigo.value);

    if (lista.textContent == "") {
        lista.textContent = amigo.value;
    } else {
        lista.textContent = lista.textContent + ", " + amigo.value;
    }
    
    amigo.value = "";

    atualizarLista();
    atualizarSorteio();
}

Para impedir que o sorteio ocorra com menos de 3 pessoas.

function sortear(){

    //Para impedir que o sorteio ocorra com menos de 3 pessoas.
    if (amigos.length <= 2){
        return alert("A lista deve conter ao menos 3 nomes")
    }

    embaralhar(amigos);
     
    for (let i = 0; i < amigos.length; i++) {
        if (i == amigos.length -1) {
            sorteio.innerHTML = sorteio.innerHTML + amigos[i] + ' --> ' + amigos[0] + '<br/>';
        }else {
            sorteio.innerHTML = sorteio.innerHTML + amigos[i] + ' --> ' + amigos[i+1] + '<br/>';
        }
    }

}
1 resposta
solução!

Oi, Tairone! Como vai?

Me chamou atenção o cuidado em validar entradas vazias, normalizar maiúsculas e minusculas e evitar duplicidade, além da regra clara para impedir o sorteio com menos participantes, o que deixa a lógica mais consistente e previsível.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abracos e bons estudos!