在javascript中重构数组和对象
我使用托盘将数组转换为数组,并按值分组对象。我有两个箱子ned要买这样的东西在javascript中重构数组和对象,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我使用托盘将数组转换为数组,并按值分组对象。我有两个箱子ned要买这样的东西 items={{ '2012-05-22': [{title: 'item 1 - any js object', summary:'ttttt ddddd'}], '2012-05-23': [{title: 'item 2 - any js object', summary:'ttttt ddddd'}], '2012-05-25': [{title: 'item 3 - any js object', summa
items={{
'2012-05-22': [{title: 'item 1 - any js object', summary:'ttttt ddddd'}],
'2012-05-23': [{title: 'item 2 - any js object', summary:'ttttt ddddd'}],
'2012-05-25': [{title: 'item 3 - any js object', summary:'ttttt ddddd'}, {name: 'any js
object', summary:'ttttt ddddd'}]
}}
items=[
{
title: 2012-05-22,
data: [
{title: 'Pilates ABC', summary:'ttttt ddddd'},
{title: 'Vinyasa Yoga', summary:'ttttt ddddd'}
]
},
{
title: 2012-05-21,
data: [
{title: 'Pilates ABC', summary:'ttttt ddddd'},
{title: 'Vinyasa Yoga', summary:'ttttt ddddd'}
]
},
我的数组看起来像
lists = [
{
date: "2020-12-21",
summary: "event",
title: "title",
},
{
date: "2020-12-21",
summary: "event 2",
title: "title 2",
},
{
date: "2020-12-22",
summary: "event",
title: "title",
},
]
我尝试减少数组,如果有两个相同的日期,则只得到一个
const reduce = lists.reduce((accc, currentItemm) => {
const { date, ...coolItem } = currentItemm;
accc[date] = [coolItem];
return accc;
}, {});
将数组inti重构为新数组-对象的最简单和最好的方法是什么。
列表=[{
日期:“2020-12-21”,
总结:“活动”,
标题:“标题”,
},
{
日期:“2020-12-21”,
总结:“事件2”,
标题:“标题2”,
},
{
日期:“2020-12-22”,
总结:“活动”,
标题:“标题”,
},
]
const result1=列表。减少((acc,curr)=>{
常数温度={
摘要:当前摘要,
标题:curr.title
};
会计科目[当前日期]=会计科目[当前日期]?会计科目[当前日期]=[临时,…会计科目[当前日期]]:会计科目[当前日期]=[临时];
返回acc;
}, {});
console.log(result1)
const result2=Object.keys(result1.map)(项=>{
返回{
标题:项目,
数据:结果1[项目]
}
})
console.log(result2)
作为控制台包装{max height:100%!important;top:0;}
这是否回答了您的问题?