首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在检索数据期间对对象进行分组

在检索数据期间对对象进行分组
EN

Stack Overflow用户
提问于 2018-07-17 09:20:22
回答 1查看 66关注 0票数 1

我有下面的防火墙数据库。

代码语言:javascript
复制
  {
      "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之间。卡拉克特?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-17 09:26:35

您可以使用ISO日期、年份和月份的一部分进行分组。

代码语言:javascript
复制
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);
代码语言:javascript
复制
.as-console-wrapper { max-height: 100% !important; top: 0; }

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51377643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档