I have an object contains value is array, like:
const CHANNELS = {
FACEBOOK: [{
value: 'face1',
label: 'Facebook Account'
},{
value: 'face1',
label: 'Facebook Group'
},
],
LINKEDIN: [{
value: '',
label: 'All'
}, {
value: 'english',
label: 'English'
}, {
value: 'korean',
label: 'Korean'
}
],
YOUTUBE: [{
value: 'youtube1',
label: 'Youtube channel'
}, {
value: 'youtube2',
label: 'Youtube'
}
]
};
I want to get all value from key in this array. So, my expect array as output like:
const array = [{
value: 'face1',
label: 'Facebook Account'
}, {
value: 'face1',
label: 'Facebook Group'
}, {
value: '',
label: 'All'
}, {
value: 'english',
label: 'English'
}, {
value: 'korean',
label: 'Korean'
}, {
value: 'youtube1',
label: 'Youtube channel'
}, {
value: 'youtube2',
label: 'Youtube'
}
]
Thanks
First get the value of the objects with Object.values()
Then use flat() to flatten it into a single array
const CHANNELS = {
FACEBOOK: [{value: 'face1', label: 'Facebook Account'},{value: 'face1', label: 'Facebook Group'}, ],
LINKEDIN: [{value: '', label: 'All'}, {value: 'english', label: 'English'}, {value: 'korean', label: 'Korean'} ],
YOUTUBE: [{value: 'youtube1', label: 'Youtube channel'}, {value: 'youtube2', label: 'Youtube'} ]
};
const res = Object.values(CHANNELS).flat();
console.log(res)
Try this :
let arr = [];
for (const key in CHANNELS) {
for (const iterator of CHANNELS[key]) {
arr.push(iterator);
}
}
console.log(arr);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With