Noob
Noob

Reputation: 156

JavaScript object inside Multiple array merge

I have one object inside the object list of array values, I want to merge the object value Thanks for Help

const List = {
    school1: [{studentname:'1'},{studentname:'2'}]
    school2: [{studentname:'21'},{studentname:'22'}] 
    school3: [{studentname:'31'},{studentname:'32'}]
}

Trying Get like this 
const List = [{studentname:'1'},{studentname:'2'},{studentname:'21'},{studentname:'22'},{studentname:'31'},{studentname:'32'}]





Upvotes: 0

Views: 45

Answers (3)

Ghazi
Ghazi

Reputation: 806

Brute force solution:

const List = {
    school1: [{studentname:'1'},{studentname:'2'}],
    school2: [{studentname:'21'},{studentname:'22'}],
    school3: [{studentname:'31'},{studentname:'32'}]
}

let List2 = [];
for(let i of Object.values(List)){
    List2.push(i)
}
console.log(List2)

Upvotes: 0

Shubham Sogi
Shubham Sogi

Reputation: 81

var a = {
    a1: [{name:'s1'}, {name: 's2'}],
    a2: [{name:'s3'}, {name: 's4'}],
    a3: [{name:'s5'}, {name: 's6'}],
}
var list = [];
Object.keys(a).forEach(x => {list = [...list, ...a[x]]})
console.log(list)

Upvotes: 0

Terry Lennox
Terry Lennox

Reputation: 30725

You can use Object.values() and Array.flat() to get the desired result:

const List = {
    school1: [{studentname:'1'},{studentname:'2'}],
    school2: [{studentname:'21'},{studentname:'22'}], 
    school3: [{studentname:'31'},{studentname:'32'}]
}

const result = Object.values(List).flat();
console.log('Result:', result)

    
.as-console-wrapper { max-height: 100% !important; }

Upvotes: 1

Related Questions