Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

160
Visualizações
how to use filter on array of objects in javascript

I want to filter my result in javascript.

const ids =["2", "3"];
const data = 
  [
    {"id":'1', 'name:'alex' , 'subject':'english' },
    {"id":'2', 'name:'alex' , 'subject':'english' },
    {"id":'3', 'name:'alex' , 'subject':'english' },
    {"id":'4', 'name:'alex' , 'subject':'english' },
  ]

I want to filter data and remove those id's found in ids. This is what I have tried so far

const NewData = ids.reduce(function (key, index) {
  return (data.filter(x => x.id !== key))
})

But it returns

[
  {"id":'1', 'name:'alex' , 'subject':'english' },
  {"id":'3', 'name:'alex' , 'subject':'english' },
  {"id":'4', 'name:'alex' , 'subject':'english' },
]

I want to remove id 2 & '3' from data but it only remove id 2.Hope You understand my issue.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

No need to use reduce. A simple filter will work.

Example:

const ids = ["2", "3"];

const data = [
  { id: "1", name: "alex", subject: "english" },
  { id: "2", name: "alex", subject: "english" },
  { id: "3", name: "alex", subject: "english" },
  { id: "4", name: "alex", subject: "english" },
];

const new_data = data.filter((x) => ids.includes(x.id));
console.log(new_data);

about 4 years ago · Juan Pablo Isaza Relatório

0

If the type of id in the original array differs from the type of id in the data, you can use .map(a=>parseInt(a)) and then check with .includes()

const ids = ["2", "3"];

const data = [
  { id: 1, name: "alex", subject: "english" },
  { id: 2, name: "alex", subject: "english" },
  { id: 3, name: "alex", subject: "english" },
  { id: 4, name: "alex", subject: "english" },
];
const ids_int  = ids.map(a => parseInt(a))
const filtered = data.filter(x => !ids_int.includes(x.id))
console.log(filtered)

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda