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

168
Views
Reduce nested array of objects to array of objects

I have an array like

Const array=[
{
id:1,
name:"abc",
Address:[
   {
    City: "something",
    Country: "first country"
   },
   {
    City: "other city",
    Country: "country"
    }
  ]
},
{
...........
}
];

I have to display this nested array objects as flat key value list. So How to reduce this like below.

Reducedarray = [
  { Id: 1, name: "abc" },
  { City: "something", country: "first country"},
  { City: "other city", country: "country"},
  { Id: 2, name: "bbc" },
  { City: "bbcsomething", country: "fbbct country"},
  { City: "other city", country: "country"}
]

Using reducearray i will map with object keys and display as key value list in html.

Need to display as flat list using jsx like below

Id: 1 Name: abc City: first ity Country: firstcountry City: second city Country: second country Id:2 Name: another name ..... ...... ....

Can anyone help me on this plz.. is it possible with reduce only?

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

0

You could take a flat map with the destructured rest object and Address array.

const
    array = [{ id: 1, name: "abc", Address: [{ City: "something", Country: "first country" }, { City: "other city", Country: "country" }] }],
    result = array.flatMap(({ Address, ...o }) => [o, ...Address]);

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

about 4 years ago · Juan Pablo Isaza Report

0

Solution with reduce:

const data = [{ id: 1, name: "abc", Address: [{ City: "something", Country: "first country" }, { City: "other city", Country: "country" }] }, { id: 2, name: "dfe", Address: [{ City: "something1", Country: "second country" }, { City: "city", Country: "new country" }] }];

const Reducedarray = data.reduce((acc, { Address, ...rest }) => (
  [...acc, rest, ...Address]
), []);

console.log(Reducedarray );
.as-console-wrapper { max-height: 100% !important; top: 0; }

about 4 years ago · Juan Pablo Isaza Report

0

const array= [
{
id:1,
name:"abc",
Address:[
   {
    City: "something",
    Country: "first country"
   },
   {
    City: "other city",
    Country: "country"
    }
  ]
},
];

const array2 = []

for(let el of array) {
  
    if(el.id) array2.push({id: el.id, name: el.name})
    
    if(el.Address) {
        
        for(let element of el.Address) {
          
          array2.push({ city: element.City, country: element.Country})
        }
    }
  
  
}

console.log(array2)
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!