gpt4 book ai didi

javascript - 如何使用underscore.js创建一个组

转载 作者:行者123 更新时间:2023-12-03 01:52:36 24 4
gpt4 key购买 nike

{
"Name": "User1",
"SlotStartDate": "05/16/2018",
"SlotStartTime": "9:20AM"
},
{
"Name": "User1",
"SlotStartDate": "05/16/2018",
"SlotStartTime": "10:20AM"
},
{
"Name": "User1",
"SlotStartDate": "05/17/2018",
"SlotStartTime": "9:20AM"
},
{
"Name": "User1",
"SlotStartDate": "05/17/2018",
"SlotStartTime": "10:20AM"
},
{
"Name": "User2",
"SlotStartDate": "05/16/2018",
"SlotStartTime": "8:45AM"
},
{
"Name": "User2",
"SlotStartDate": "05/16/2018",
"SlotStartTime": "9:25AM"
}
{
"Name": "User2",
"SlotStartDate": "05/17/2018",
"SlotStartTime": "8:45AM"
},
{
"Name": "User2",
"SlotStartDate": "05/17/2018",
"SlotStartTime": "9:25AM"
}

如何使用 underscore.js 对数据进行分组并按以下方式返回数组:

按用户和日期分组。

User1
- "05/16/2018"
- "9:20AM"
- "10:20AM"
- "05/17/2018"
- "9:20AM"
- "10:20AM"
User2
- "05/16/2018"
- "8:45AM"
- "9:25AM"
- "05/17/2018"
- "8:45AM"
- "9:25AM"

我尝试了以下代码的组合:

var createGroups = _.groupBy(response2, function(value){
return value.Name + '#' + value.SlotStartDate
});

var groupedData = _.map(createGroups,function(createGroup){
return {
slottimes: _.pluck(createGroup,'SlotStartTime')
}
});

感谢您的帮助!

最佳答案

你可以这样做:

var groupedData = _.mapObject(_.groupBy(data, 'Name'), (user) => {
return _.mapObject(_.groupBy(user, 'SlotStartDate'), (date) => {
return _.pluck(date, 'SlotStartTime');
});
});

jsfiddle link

关于javascript - 如何使用underscore.js创建一个组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50352499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com