Filtrar um array com a função filter

Pessoal criei um Array com a [conta_id, nome e meta], gostaria de fazer um filtro somente da conta_id e nome, mas não estou conseguindo!

O que estou fazendo de errado?

const gestores = [
    {conta_id: 01, nome: "luciano", meta: 1000},
    {conta_id: 02 ,nome: "luis", meta: 5000}
]

const id = gestores.filter(function(id,nome){
  return id + nome
})

console.log(id)

A função filter serve pra retornar elementos especifico do array de acordo com uma certa condição.

A forma correta de usá-la é assim:

const gestores = [
  {conta_id: 01, nome: 'luciano', meta: 1000 },
  {conta_id: 02 ,nome: 'luis', meta: 5000 },
  {conta_id: 03 ,nome: 'pedro', meta: 2000 },
  {conta_id: 04 ,nome: 'paulo', meta: 3000 }
];

let metaMaiorQue2Mil = gestores.filter( function(gestor, index, gestores) {
  // O primeiro parametro representa o elemento atual
  // O segundo é o indice desse objeto
  // O terceiro é o array do qual ele faz parte
  // O retorno sempre tem que ser true ou false
  return gestor.meta > 2000;
} );

// forma resumida
metaMaiorQue2Mil = gestores.filter((gestor, index, gestores) => gestor.meta > 2000);

// mais resumido ainda ('e' de elemento)
metaMaiorQue2Mil = gestores.filter(e => e.meta > 2000);

// mostra apenas luis e paulo
console.table(metaMaiorQue2Mil); 

O que vc quer é retornar uma string com conta_id + nome, né? Vc precisa da função map pra isso. Ficaria assim:

const x = gestores.map(e => e.conta_id + ' / ' + e.nome);
console.table(x);
3 curtidas