javascript - 如何使用 Lodash / Underscore 进行以下数据处理分组处理
大家讲道理
大家讲道理 2017-04-11 10:28:20
[JavaScript讨论组]

有以下格式的 json:

[
    {
        id: 1,
        created: "2016-05-04 15:12:40",
        content: '...'
    },
    {
        id: 2,
        created: "2016-02-04 15:12:40",
        content: '...'
    },
    {
        id: 3,
        created: "2015-12-04 15:12:40",
        content: '...'
    },
]

使用 Lodash 的 groupBy 函数 return created 的月份将会得到以下结果。。

{
    5: [{
        id: 1,
        created: "2016-05-04 15:12:40",
        content: '...'
    }],
    2: [{
        id: 2,
        created: "2016-02-04 15:12:40",
        content: '...'
    }],
    5: [{
        id: 3,
        created: "2015-12-04 15:12:40",
        content: '...'
    }],
    
}

如何处理得到以下结果

[
    {
        month: '本月',
        data: [
            {
                id: 1,
                created: "2016-05-04 15:12:40",
                content: '...'
            }
        ]
    },
    {
        month: '4月',
        ...
    }
]

已自行解决

const groupedByMonth = groupBy(this.incomes, item =>
  item.updated_at.substring(0, 7)
);
const result = reduce(groupedByMonth, (res, data, date) => {
  res.push({ date, data });
  return res;
}, []);
return result;
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(1)
PHP中文网
var re=_.groupBy(arr,function(item){
    return (new Date(item.created).getMonth());
})
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号