Получить один массив из объекта массивов
Помогите пожста разобраться со следующей конструкцией. Есть объект с массивами и в них содержаться объекты:
const rooms = {
room1: [
{ name: 'Jack' },
{ name: 'Andrey' },
{ name: 'Ann' }
],
room2: [
{ name: 'Vasya' },
{ name: 'Jon' },
],
room3: [
{ name: 'Petro' },
{ name: 'Alex' },
]
};
Нужно получить массив имен с помощью функции(при этом использую только методы объектов и массивов, не использовать по возможности цикл for):
console.log(getPeople(rooms));
// Output: ['Jack', 'Andrey', 'Ann', 'Vasya', 'Jon', 'Petro', 'Alex']
Начал делать и пытался, но получалась ерунда. Если можно, то направить как решить задачу, подсказать хоть как-то с чего начать в целом:
const getPeople = obj => {
const arr = Object.values(obj);
return ;
};
Ответы (1 шт):
Автор решения: EzioMercer
→ Ссылка
Можете просто взять все значения как массив и применить к нему flat:
const rooms = {
room1: [
{ name: 'Jack' },
{ name: 'Andrey' },
{ name: 'Ann' }
],
room2: [
{ name: 'Vasya' },
{ name: 'Jon' },
],
room3: [
{ name: 'Petro' },
{ name: 'Alex' },
]
};
const getOneArr = (obj) => Object.values(obj).flat();
console.log(getOneArr(rooms));