【发布时间】:2022-01-24 14:02:04
【问题描述】:
我有一个对象数组,如下所示:
const data = [{label: 'ABC', id: '1', emp:{empLabel: 'Test1', empId: '12'}},
{label: 'ABC', id: '1', emp:{empLabel: 'Test2', empId: '13'}},
{label: 'DEF', id: '2', emp:{empLabel: 'Test11', empId: '14'}},
{label: 'DEF', id: '2', emp:{empLabel: 'Test12', empId: '15'}},
{label: 'PQR', id: '3', emp:{empLabel: 'Test13', empId: '16'}},
{label: 'XYZ', id: '4', emp:{empLabel: 'Test14', empId: '17'}}
]
如果我的 id 相等,我正在尝试合并 emp 数据。
预期输出:
[
{label: 'ABC', id: '1', emp:[{empLabel: 'Test1', empId: '12'}, {empLabel: 'Test2', empId: '13'}]},
{label: 'DEF', id: '2', emp:[{empLabel: 'Test11', empId: '14'}, {empLabel: 'Test12', empId: '15'}]},
{label: 'PQR', id: '3', emp:{empLabel: 'Test13', empId: '16'}},
{label: 'XYZ', id: '4', emp:{empLabel: 'Test14', empId: '17'}}
]
我曾尝试通过 lodash 执行此操作,但不知道在此之后如何进行。任何帮助将不胜感激?
我的方法:
result = _.map(data, eachData => {
return _.chain(_.flatMap(eachData))
})
【问题讨论】:
-
这能回答你的问题吗? lodash - group and populate arrays
标签: javascript arrays lodash