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

89
Visualizações
Filtrado de una matriz basada en los valores de otros objetos

Me gustaría filtrar esta matriz de programas (he simplificado los objetos):

 const programs = [ { format: "In-Person", schedule: "Full-Time", }, { format: "Remote", schedule: "Full-Time", }, { format: "In-Person", schedule: "Part-Time", }, { format: "Remote", schedule: "Part-Time", } ]

basado en un objeto de filtro:

 const filters = {format: "Remote", schedule:"Full-Time"}

Mi intento:

 let filteredPrograms = programs.filter((program) => { return Object.entries(filters).every(([key, value]) => { program[key] == value; }); });

Esto debería analizar cada programa y permitir pasar por el filtro SI: Para cada clave de filtro, el valor del programa [clave de filtro] coincide con el valor del filtro

Pero obtengo una matriz vacía para programas filtrados

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

0

Devuelve el resultado de la comparación dentro de every devolución de llamada:

 const programs=[{format:"In-Person",schedule:"Full-Time"},{format:"Remote",schedule:"Full-Time"},{format:"In-Person",schedule:"Part-Time"},{format:"Remote",schedule:"Part-Time"}],filters={format:"Remote",schedule:"Full-Time"}; let filteredPrograms = programs.filter((program) => { return Object.entries(filters).every(([key, value]) => { return program[key] == value; }); }); console.log(filteredPrograms)

O convertirlo en una función de flecha:

 const programs=[{format:"In-Person",schedule:"Full-Time"},{format:"Remote",schedule:"Full-Time"},{format:"In-Person",schedule:"Part-Time"},{format:"Remote",schedule:"Part-Time"}],filters={format:"Remote",schedule:"Full-Time"}; let filteredPrograms = programs.filter((program) => { return Object.entries(filters).every(([key, value]) => program[key] == value); }); console.log(filteredPrograms)

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