【发布时间】:2021-07-14 12:34:43
【问题描述】:
我有一个如下所示的对象数组:
const childrens = [
{ orderName: "#1004" },
{ orderName: "#1006" },
{ orderName: "#1007" },
{ orderName: "#1005" },
{ deliveryDate: "25-25-25" },
{ signature: "xq" },
];
我希望将其转换为对象,并具有与这样的值数组相同的键值
{
orderName: [ '#1004', '#1006', '#1007', '#1005' ],
deliveryDate: [ '25-25-25' ],
signature: [ 'xq' ]
}
我现在这样做的方式是使用这样的 reduce 函数
_.reduce(
childrens,
(acc, cur) => {
const pairs = _.chain(cur).toPairs().flatten().value();
if (acc[pairs[0]] === undefined) {
acc[pairs[0]] = [pairs[1]];
} else {
acc[pairs[0]].push(pairs[1]);
}
return acc;
},
{},
);
我想知道使用内置 lodash 函数是否有更简洁的方法?
【问题讨论】:
标签: javascript node.js lodash