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

196
Visualizações
Combinar todos los arreglos dentro de los arreglos

Tengo un problema al combinar matrices que quería obtener y que provienen de otra matriz.

datos

 datas = [ { "id": "22333", "name": "", "details": [ { "value": 1 }, { "value": 2 } ] }, { "id": "4444", "name": "", "details": [ { "value": 99 }, { "value": 66 } ] } ]

Rendimiento esperado

 final = [ { "value": 1 }, { "value": 2 }, { "value": 99 }, { "value": 66 } ]

Código

 datas.map((data) => ({ ...data.details}))
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Reemplace el map con flatMap .

El método flatMap devuelve una nueva matriz formada al aplicar una función de devolución de llamada dada a cada elemento de la matriz y luego aplanar el resultado en un nivel. Es idéntico a un map seguido de un flat de profundidad 1, pero un poco más eficiente que llamar a esos dos métodos por separado.

 const datas=[{id:"22333",name:"",details:[{value:1},{value:2}]},{id:"4444",name:"",details:[{value:99},{value:66}]}]; const flattened = datas.flatMap(obj => obj.details); console.log(flattened);

Para obtener el map de números reales sobre la matriz de details .

 const datas=[{id:"22333",name:"",details:[{value:1},{value:2}]},{id:"4444",name:"",details:[{value:99},{value:66}]}]; const flattened = datas.flatMap(obj => { return obj.details.map(el => el.value); }); console.log(flattened);

about 4 years ago · Juan Pablo Isaza Relatório

0

datas.reduce((acc, val) => { return acc.concat(val.details) }, [])
about 4 years ago · Juan Pablo Isaza Relatório

0

También puede hacer uso de reduce aquí:

 arr.reduce((acc, curr) => { acc.push(...curr.details); return acc; }, []) 

 const arr = (datas = [ { id: "22333", name: "", details: [ { value: 1, }, { value: 2, }, ], }, { id: "4444", name: "", details: [ { value: 99, }, { value: 66, }, ], }, ]); const result = arr.reduce((acc, curr) => { acc.push(...curr.details); return acc; }, []); console.log(result);

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