Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Sobre oque o filter() está retornando

Na linha de setColaboradores não entendi o porque ele apaga um colaborador sendo que o retorno de colaboradores.filter é o próprio objeto de colaboradores já que colaborador.id não é diferente de id

Fiz até um console.log para ver o que retornava e ai que eu não entendi foi nada

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Alguém pode ajudar!? ^^

3 respostas
solução!

Na documentação da função filter() : https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

O método filter() cria um novo array com todos os elementos que passaram no teste implementado pela função fornecida.

No seu caso o "teste" ou "condição" fornecida é o id do colaborador.

Logo o setColaboradores() está "criando um novo array com todos os elementos que passaram no teste implementado pela função filter()", logo "deletando" o colaborador que possui o id passado no parâmetro da função deletarColaborador.

Deixei o link da doc, caso quera dar uma olhada na função filter(), se te ajudei de alguma forma, vai me ajudar muito se marcar como concluído o tópico. Forte abraço e bons estudos. ;)

Pois então, ate ai eu entendi, más o que aparece no console.log de colaborador.filter() é o objeto exatamente igual ao que ele já tava, então porque deleta? Nessa linha de raciocínio não era para deletar e sim continuar do jeito que estava porque a condição de filter() ta me retornando o que é diferente(!==) e todos são

O print acima do console é o que setColaborador() está recebendo

Pra resolver isso teria que ver a pagina toda e onde você colocou o console.log, consegue me mandar prints? Dai consigo te ajudar melhor