Só gostaria de compartilhar um outro modo que achei para fazer o sorteio
let listaAmigos = [];
let nomeFiltrados = [];
let nomeSorteado1;
let nomeSorteado2;
let primeiroNomeSorteado;
let listaNomesSorteados = document.getElementById('lista-sorteio');
let amigosIncluidos = document.getElementById('lista-amigos');
function adicionar() {
let nomeAmigo = document.getElementById('nome-amigo').value;
listaAmigos.push(nomeAmigo);
document.getElementById('nome-amigo').value = '';
//console.log(listaAmigos);
amigosIncluidos.textContent = listaAmigos;
}
function sortear() {
for (let i = 0; i < listaAmigos.length; i++) {
if (i == 0) {
nomeSorteado1 = listaAmigos[Math.floor(Math.random() * listaAmigos.length)];
console.log(nomeSorteado1);
nomeFiltrados = listaAmigos.filter(nome => nome !== nomeSorteado1);
primeiroNomeSorteado = nomeSorteado1;
} else {
nomeSorteado1 = nomeSorteado2;
nomeFiltrados = nomeFiltrados.filter(nome => nome !== nomeSorteado1);
}
nomeSorteado2 = nomeFiltrados[Math.floor(Math.random() * nomeFiltrados.length)];
console.log(nomeSorteado2);
if (nomeSorteado2 == undefined ){
nomeSorteado2 = primeiroNomeSorteado;
}
listaNomesSorteados.innerHTML = listaNomesSorteados.innerHTML + `<p id="lista-sorteio"> ${nomeSorteado1} → ${nomeSorteado2}</p>`
}
}
function reiniciar() {
listaAmigos = [];
listaNomesSorteados.innerHTML = '';
amigosIncluidos.textContent = '';
nomeFiltrados = '';
}