【发布时间】:2021-03-20 18:36:50
【问题描述】:
我有一些对象数组 我想将具有相同键的对象数组合并并根据键和值将其创建为新对象
const data =[{
date:"19",
status:"in",
hour:”12:00”
},{
date:"19",
status:"in",
hour:”12:20”
},{
date:"19",
status:"in",
hour:”12:43”
},{
date:"19",
status:"out",
hour:”16:16”
},{
date:"20",
status:"in",
hour:07:30”
},{
date:"20",
status:"out",
hour:”14:40”
},{
date:"21",
status:"in",
hour:”08:12”
}
]
这是我想要的结果
result =[{
date:”19”,
hourIn= “12:00”,
hourOut= “16:16”,
}, {
date:"20",
hourIn:"07:30",
hourOut:14:40”
},{
date:"21",
hourIn:”08:12”,
hourOut:”-“}]
我想如何解决这个问题?
【问题讨论】:
-
如果
"status: "in"和"status": "out"在不同的数组中,这将非常容易。我担心的是,不仅用最后一个覆盖"in",同时还保留最新的"out",这将非常困难 -
是的,你是对的,但问题是我的后端工程师没有这样解决,也不想 -_-
标签: javascript algorithm filter array-merge arrayobject