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

134
Visualizações
Agrupación de Javascript por propiedad de objeto, cuando la propiedad es una matriz

Actualmente tengo una matriz de elementos que se parece un poco a esto: Quiero agrupar los elementos por búsqueda de categoría, con el pequeño problema de que la búsqueda de categoría es potencialmente una matriz, de modo que el Elemento principal 2 aparecería dos veces (una vez en Mi gato ) y una vez en otra cosa) Intenté usar https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/groupBy pero parece que no puede manejar esto.

 [ { "tool_id": "4-19de-454673d9-9ef5-4545", "somekey" : "Parent Item 2" "categoryLookup": [ { "category_name": "New Item", } ] }, { "tool_id": "be7ea707-19de-43d9-9ef1-d4a3ff79f77a", "somekey" : "Parent Item" "categoryLookup": [ { "category_name": "My Cat", }, { "category_name": "Something Else", } ] } ]

El resultado final sería algo como:

 [ { New Item: [ {...contains 4-19de-454673d9-9ef5-4545 } ], My Cat: [ {...contains be7ea707-19de-43d9-9ef1-d4a3ff79f77a} ], Something Else: [ {... contain be7ea707-19de-43d9-9ef1-d4a3ff79f77a} ] } ]
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Puede iterar sobre la matriz original y crear la final:

 var data = [{ "tool_id": "4-19de-454673d9-9ef5-4545", "somekey": "Parent Item 2", "categoryLookup": [{ "category_name": "New Item", }] }, { "tool_id": "be7ea707-19de-43d9-9ef1-d4a3ff79f77a", "somekey": "Parent Item", "categoryLookup": [{ "category_name": "My Cat", }, { "category_name": "Something Else", } ] } ]; function groupByCategory(data) { const res = {}; data.forEach(item => { item.categoryLookup.forEach(category => { const name = category.category_name; res[name] ??= []; res[name].push({ item: item.tool_id //or all the properties you want }); }); }); return res; } console.log( groupByCategory(data) );

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