1
resposta

Resolução de Atividades - "05 Faça como eu fiz: lógica para embaralhar a lista de amigos"

let amigos = [];

function adicionar() {
    let amigo = document.getElementById('nome-amigo');
    let lista = document.getElementById('lista-amigos');
    amigos.push (amigo.value);
    if ( lista.textContent == '') {
     lista.textContent = amigo.value;
    } else {
        lista.textContent = lista.textContent + ', ' + amigo.value;
    }
   amigo.value = '';
}

function sortear() {
  embaralha(amigos);
  
}

function embaralha(lista) {

    for (let indice = lista.length; indice; indice--) {

        const indiceAleatorio = Math.floor(Math.random() * indice);

        // atribuição via destructuring
        [lista[indice - 1], lista[indiceAleatorio]] = 
            [lista[indiceAleatorio], lista[indice - 1]];
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Zilda! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Seu código ficou bem organizado, e a função embaralha() mostra uma ótima compreensão da lógica de troca de elementos, a ideia de usar destructuring para embaralhar a lista é muito eficiente. Gostei da clareza na estrutura das funções e da manipulação do DOM.

Uma dica interessante para o futuro é usar o método join() para exibir os nomes de forma mais legível na tela, separando-os por vírgulas sem precisar de várias concatenações.


let lista = ['Ana', 'Bruno', 'Carlos'];
console.log(lista.join(', '));

Esse código usa join(', ') para transformar o array em uma string separada por vírgulas.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!