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

[Projeto] Resolvendo com método filter()

Olá, estava aqui experimentando novas soluções para o problema desta aula e procurei resolve-lo usando o método filter(). Segue meu código:

const clientes = require('./clientes.json')

function encontrar(array, chave, valor) {
  return array.filter(cliente => cliente[chave].includes(valor))
}

console.log(encontrar(clientes, 'nome', 'Amye'))

Saída do console:

[
  {
    nome: 'Amye',
    email: 'aranahan2@yellowbook.com',        
    telefone: [ '1918820860', '19918820860' ],
    endereco: {
      logradouro: 'Rua Karstens',
      numero: '59',
      cep: '627533',
      apartamento: true,
      complemento: 'ap 401'
    }
  }
]

Faz sentido essa solução? Qual é a diferença entre usar o método filter() e o método find() ????

Abraços. Rafael

2 respostas
solução!

Olá Rafael, tudo bem?

Parabéns pela iniciativa de experimentar novas soluções para o problema proposto na aula!

Sobre a sua solução utilizando o método .filter(), ela está correta e faz todo o sentido. O método .filter() é utilizado para filtrar elementos de um array com base em uma condição.

Já o método .find() é utilizado para encontrar o primeiro elemento de um array que satisfaça uma determinada condição. Ou seja, ele retorna o primeiro elemento encontrado que atende à condição, enquanto o .filter() retorna um novo array com todos os elementos que atendem à condição.

Continue assim! Caso durante os seus estudos você tenha dúvidas ou problema, recorra ao fórum, estamos aqui para ajudá-lo. Grande abraço e bons estudos!

Olá Armano, muito obrigado pelo retorno! Agora compreendi perfeitamente!