У меня есть JSON, как мне из него переделать в массив обьектов?
{
user: ['jim', 'bim', 'jack'],
name: ['one', 'two', 'thre']
}
вот в это:
[
{
user: 'jim',
name: 'one'
},
{
user: 'bim',
name: 'two'
},
{
user: 'jack',
name: 'thre'
},
]
Ответы (2 шт):
Автор решения: Aziz Umarov
→ Ссылка
способов много но предложу как-то так
let users = {
user: ['jim', 'bim', 'jack'],
name: ['one', 'two', 'thre']
}
let result = users.user.map((item, index)=> ({user: item, name: users.name[index]}));
console.log(result)
Автор решения: vsemozhebuty
→ Ссылка
Вариант без привязки к именам и количеству ключей (если это усложнение будет оправдано):
const users1 = {
user: ['jim', 'bim', 'jack'],
name: ['one', 'two', 'thre'],
};
const entries = Object.entries(users1);
const users2 = Array.from(
{ length: entries[0][1].length },
(_, index) => {
const user = {};
for (const [key, values] of entries) {
user[key] = values[index];
}
return user;
}
);
console.log(users2);