这是我的输入对象。
let data = {
"01-02-20":[{id:1}],
"23-02-20":[{id:1}]
}
我正在尝试通过此代码转换对象数组
let res = Object.entries(data).map(( [k, v] ) => ({ [k]: v }));
但是我没有得到我的期望值:
我的预期结果应该是这样的:
let result = [
{
date: '01-02-20',
item: [{ id: 1 }],
},
{
date: '23-02-20',
item: [{ id: 1 }],
},
]
如何获得预期的结果?
您date
在结果对象中使用as键并将值用作值。相反,您应该使用两个键值对,一个用于date
将键用作值,另一个用于item
将值用作值,如下所示:
let res = Object.entries(data).map(( [k, v] ) => ({ date: k, item : v }));
使用简写属性名称更简洁:
let res = Object.entries(data).map(( [date, item] ) => ({ date, item }));
演示:
let data = {
"01-02-20": [{ id:1 }],
"23-02-20": [{ id:1 }]
};
let res = Object.entries(data).map(( [date, item] ) => ({ date, item }));
console.log(res);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句