Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

254
Views
Obtener una matriz de una matriz de objetos de matriz

Tengo una matriz que consta de una matriz de objetos como se muestra:

 dataArr = [ { id: 1, arrObj: [ { id: 11, label: 'apple' }, { id: 12, label: 'ball' } ] }, { id: 2, arrObj: [ { id: 21, label: 'car' }, { id: 22, label: 'dog' } ] } ];

Necesito extraer una matriz que consta solo de objetos arrObj:

 var newArr = [ { id: 11, label: 'apple' }, { id: 12, label: 'ball' }, { id: 21, label: 'car' }, { id: 22, label: 'dog' } ];

Intenté usar el método de reducción sin éxito:

 dataArr.reduce((previousValue, currentValue, currentIndex, array) => { return previousValue. arrObj.concat(currentValue.arrObj) });

Déjame saber cómo hacer esto. Gracias

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

 let dataArr = [ { id: 1, arrObj: [ { id: 11, label: 'apple' }, { id: 12, label: 'ball' } ] }, { id: 2, arrObj: [ { id: 21, label: 'car' }, { id: 22, label: 'dog' } ] } ]; let result = dataArr.flatMap(e => e.arrObj) console.log(result)

about 4 years ago · Juan Pablo Isaza Report

0

Estabas bastante cerca.

  1. No hay una propiedad arrObj en su resultado, es solo una matriz.
  2. Debe proporcionar una matriz vacía como argumento de valor inicial para reduce() .

 const dataArr = [{ id: 1, arrObj: [{ id: 11, label: 'apple' }, { id: 12, label: 'ball' } ] }, { id: 2, arrObj: [{ id: 21, label: 'car' }, { id: 22, label: 'dog' } ] } ]; const newArr = dataArr.reduce((previousValue, currentValue) => { return previousValue.concat(currentValue.arrObj) }, []); console.log(newArr);

about 4 years ago · Juan Pablo Isaza Report

0

Podría usar en una línea usando Spread Operator...

 dataArr.reduce((previousValue, currentValue) => [...previousValue?.arrObj, ...currentValue?.arrObj]);

Sugerencia: utilice ¿ Encadenamiento opcional ?. en caso de que no haya propiedad arrObj !

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!