У меня есть два массива, которые имеют несколько объектов
[
{
"name":"paul",
"employee_id":"8"
}
]
[
{
"years_at_school": 6,
"department":"Mathematics",
"e_id":"8"
}
]
Как я могу добиться следующего с помощью ES6 или Lodash?
[
{
"name":"paul",
"employee_id":"8"
"data": {
"years_at_school": 6
"department":"Mathematics",
"e_id":"8"
}
}
]
Я могу объединиться, но яне знаю, как создать новый дочерний объект и объединить его в.
Код, который я пробовал:
school_data = _.map(array1, function(obj) {
return _.merge(obj, _.find(array2, {employee_id: obj.e_id}))
})
Это сливается с массивом верхнего уровня, как это так (а это не то, что яwant):
{
"name":"paul",
"employee_id":"8"
"years_at_school": 6
"department":"Mathematics",
"e_id":"8"
}
Соединитель между ними - "employee_id"
и "e_id"
.
Крайне важно учитывать, что это может быть 1000 объектов в каждом массиве, ичто единственный способ сопоставить эти объекты - это "employee_id"
и "e_id"
.