1
resposta

Desafio: hora da prática

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

function sortear() {
    embaralha(amigos);
    let sorteio = document.getElementById('lista-sorteio');

    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>';
        }
        
    }
}

function excluirAmigo(index) {
    amigos.splice(index,1);
    atualizarLista();
    atualizarSorteio();
}

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]];
    }
}

function atualizarSorteio() {
    let sorteio = document.getElementById('lista-sorteio');
    sorteio.innerHTML = '';
}

function atualizarLista() {
    let lista = document.getElementById('lista-amigos');
    lista.innerHTML = '';

    for(let i = 0; i< amigos.length;i++) {
        let paragrafo = document.createElement('p');
        paragrafo.textContent = amigos[i];

        paragrafo.addEventListener('click',function() {
            excluirAmigo(i);
        });

        lista.appendChild(paragrafo);
    }
}

2-

let minhaLista = [];

minhaLista.push(1,2,3);
console.log(minhaLista);

let outraLista = [4,5,6];
let novaLista = minhaLista.concat(outraLista);
console.log("Juntando Arrays:", novaLista);

3-

novaLista.pop();
console.log(novaLista);

4-


function embaralharArray(array) {
  for (let i = array.length - 1; i > 0; i--) {
    const j = Math.floor(Math.random() * (i + 1));
    [array[i], array[j]] = [array[j], array[i]];
  }
  return array;
}

novaLista = embaralharArray(novaLista);
console.log("Embaralhando a Lista:", novaLista);

5-

function removerDuplicatas(array) {
     return [...new Set(array)];
}

let novaListaSemDuplicatas = removerDuplicatas(novaLista);
console.log("Remover duplicatas:", novaListaSemDuplicatas);
1 resposta

Oi, Felipe!

Obrigada por compartilhar seu código com a comunidade Alura.

Gostei de como você utilizou métodos de arrays, como push() e concat(), para gerenciar a lista de amigos e o sorteio. Parabéns por praticar.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!