[英]how do i convert array of one object containing many object inside to array of object
I have an array looks like below... 我有一个数组如下所示...
arr = [{
Bildbearbeiter: 1,
Bügler: 2,
Einkäufer: 3,
Empfänger: 4,
Fotograf: 5,
}];
but I want to change it 但我想改变它
arr = [{
Bildbearbeiter: 1
},
{
Bügler: 2
},
{
Einkäufer: 3
},
{
Empfänger: 4
},
{
Fotograf: 5
}
];
So that i can iterate with each object. 这样我就可以遍历每个对象。 Is there any way to solve it??
有什么办法解决吗?
Thanks in advance 提前致谢
You can simply use Array.map()
and Object.keys()
: 您可以简单地使用
Array.map()
和Object.keys()
:
let arr = [ { Bildbearbeiter: 1, Bügler: 2, Einkäufer: 3, Empfänger: 4, Fotograf: 5, } ]; let result = Object.keys(arr[0]).map((key)=> ({[key] : arr[0][key]})); console.log(result);
Use Array.map and Object.entries 使用Array.map和Object.entries
let arr = [{Bildbearbeiter: 1,Bügler: 2,Einkäufer: 3,Empfänger: 4,Fotograf: 5}]; arr = Object.entries(arr[0]).map(([k,v]) => ({[k]:v})); console.log(arr);
Try this by clicking on Run code snippet button: 通过单击“ 运行代码片段”按钮来尝试此操作:
var arr = [{ Bildbearbeiter: 1, Bügler: 2, Einkäufer: 3, Empfänger: 4, Fotograf: 5, }]; var newArray = []; for (let key in arr[0]) { newArray.push({ [key]: arr[0][key] }); } console.log(newArray);
Or try this: 或尝试以下方法:
var arr = [{ Bildbearbeiter: 1, Bügler: 2, Einkäufer: 3, Empfänger: 4, Fotograf: 5, }]; var newArray = Object.keys(arr[0]).map(key => ({ [key]: arr[0][key] })) console.log(newArray);
You could reduce the array by adding all objects to the result set. 您可以通过将所有对象添加到结果集中来减少数组。
var array = [{ "Bildbearbeiter": 1, "Bügler": 2, "Einkäufer": 3, "Empfänger": 4, "Fotograf": 5 }], result = array.reduce((r, o) => r.concat(Object.entries(o).map(([k, v]) => ({ [k]: v }))), []); console.log(result);
You can map
the array, loop through the keys
of each object, and assign a brand new object holding the key and the value of the current item. 您可以
map
数组,遍历每个对象的keys
,并分配一个包含键和当前项目值的全新对象。
arr.map(i => {
return Object.keys(i).map(k => {
return {[k]: i[k]};
});
});
Working fiddle: http://jsfiddle.net/sw3Lxm7f/ 工作提琴: http : //jsfiddle.net/sw3Lxm7f/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.