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

151
Visualizações
nested filter array javascript

I want to create a nested filter in js when I filter my array primary data is affected and changed but I need preliminary data to remove filters

my js code :

    let result = companies;
     result.map((item, i) => {212
           let rows = [...result[i].table.table_rows].filter((item3) => {
              return Object.keys(item3).some(i => item3[i][key] === value[key]);
           });
                      
           result[i].table.table_rows = [...rows];
           return result[i];
        });
      arrayFilter(result);

my data is:

{
  "companies": [
    {
      "company": {
        "name": "company 1"
      },
      "table": {
        "table_rows": [
          {
            "cells": {
              "product_name": "prod1",
              "pa_size": "12"
            }
          },
          {
            "cells": {
              "product_name": "prod2",
              "pa_size": "15"
            }
          }
        ]
      }
    },
    {
      "company": {
        "name": "company 2"
      },
      "table": {
        "table_rows": [
          {
            "cells": {
              "product_name": "prod2-1",
              "pa_size": "12"
            }
          },
          {
            "cells": {
              "product_name": "prod2-2",
              "pa_size": "18"
            }
          }
        ]
      }
    }
  ]
}

I tried many ways to solve this problem, but I did not get the right answer

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Your question is not clear, the point I have understand that you wanted to filter the array "table_rows" located inside each companies array object? map and filter returns new array, so the solution for this is:

result = result.companies.map((item, i) => {
   const newItem = {...item};
   let rows = newItem .table.table_rows.filter((item3) => {
      return Object.keys(item3).some(i => item3[i][key] === value[key]);
   });
              
   newItem.table_rows = [...rows];
   return newItem ;
});
arrayFilter(result);
about 4 years ago · Santiago Trujillo 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