Array reduce

Array.reduce()

MDN Array.prototype.reduce()

按数组中某个值进行分组

let questions = [{
    group: 'group1',
    title: 'question content 1'
}, {
    group: 'group1',
    title: 'question content 2'
}, {
    group: 'group1',
    title: 'question content 3'
}, {
    group: 'group2',
    title: 'question content 3'
}];

let newQuestions = questions.reduce(function (accumulator, currentValue) {
    accumulator[currentValue.group] = accumulator[currentValue.group] || [];
    accumulator[currentValue.group].push(currentValue);
    return accumulator;
}, {});

newQuestions值 输出:
// newQuestions = {
//     group1: [
//         {group: 'group1', title: 'question content 1'},
//         {group: 'group1', title: 'question content 2'},
//         {group: 'group1', title: 'question content 3'}
//     ],
//     group2: [{group: 'group2', title: 'question content 3'}]
// }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值