Reputation: 156
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
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
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
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