我有下面的防火墙数据库。
{
"orders" : [ null, {
"date" : "2018-07-09 10:07:18",
"item" : "apple",
"price" : 30 },
{
"date" : "2018-06-09 10:07:18",
"item" : "bread",
"price" : 25
},
{
"date" : "2018-06-13 10:07:18",
"item" : "milk",
"price" : 25
},
{
"date" : "2018-07-05 10:07:18",
"item" : "cheese",
"price" : 50
}
]
}我想在Vue项目中检索数据,但我不知道如何检索。在不同的时间有订单,我想使用groupByChild('date')方法,但是这会返回4个对象,因为日期是唯一的。我要把订单按订单日期的月份分组。我怎么能把对象分组在7-8之间。卡拉克特?
发布于 2018-07-17 09:26:35
您可以使用ISO日期、年份和月份的一部分进行分组。
var data = { orders: [null, { date: "2018-07-09 10:07:18", item: "apple", price: 30 }, { date: "2018-06-09 10:07:18", item: "bread", price: 25 }, { date: "2018-06-13 10:07:18", item: "milk", price: 25 }, { date: "2018-07-05 10:07:18", item: "cheese", price: 50 }] },
groups = data.orders.reduce((r, o) => {
var key;
if (!o) {
return r;
}
key = o.date.slice(0, 7);
r[key] = r[key] || [];
r[key].push(o);
return r;
}, Object.create(null));
console.log(groups);.as-console-wrapper { max-height: 100% !important; top: 0; }
https://stackoverflow.com/questions/51377643
复制相似问题