Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

101
Vistas
Fusionando una matriz de objetos en una sola matriz de objetos

Estoy tratando de fusionar todos los objetos de elementos de un archivo JSON en un solo objeto de elemento. La estructura del archivo JSON se ve así;

 [ {"items":["product1","product2","product3"]}, {"items":["product4","product5","product6"]}, ]

Lo que quiero lograr es fusionar todos los elementos en un solo objeto de elementos como;

 [ {"items":["product1","product2","product3,"product4","product5","product6"]}, ]

He estado intentando concat, o esparciendo, pero no pude hacer que ninguno funcionara. ¿Cómo puedo lograr esto o cuál es el mejor método para usar en este caso?

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Desea reduce , una función cuyo trabajo es "reducir" una lista de valores a un solo valor. En JavaScript, reduce es un método en cada matriz. El primer parámetro a reduce es una función que toma la cuenta actual, luego el elemento actual y devuelve la siguiente cuenta. El segundo argumento para reducir es el valor inicial de la cuenta, en nuestro caso un objeto de 'elementos' con una matriz vacía.

 const LIST = [ {"items":["product1","product2","product3"]}, {"items":["product4","product5","product6"]}, ] const { items } = LIST.reduce((acc, element) => ({ items: [...acc.items, ...element.items] }), { items: [] }) console.log(items)

about 4 years ago · Juan Pablo Isaza Denunciar

0

Use Array.reduce() y el operador de propagación para insertar los elementos en un solo objeto y matriz:

 const arr = [ {"items":["product1","product2","product3"]}, {"items":["product4","product5","product6"]}, ] const res = arr.reduce((acc, cur) => { acc[0].items.push(...cur.items); return acc; }, [{'items': []}]); console.log(res);

about 4 years ago · Juan Pablo Isaza Denunciar

0

No tiene mucho sentido en una matriz con un solo objeto. ¿Por qué no crear una matriz y empujar/difundir el valor de los elementos de cada objeto en ella con un bucle simple ? Mucho más legible que reduce .

 const data = [ { items: ['product1', 'product2', 'product3'] }, { items: ['product4', 'product5', 'product6'] } ]; const items = []; for (const obj of data) { items.push(...obj.items); } console.log(items);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda