Javascript 按MongoDB返回的值合并两个对象数组
问题 我需要合并MongoDB按值返回的两个数组,但是我尝试过的用于常规javascript数组的所有方法都不能正常工作。非常感谢你的帮助 阵列 期望的结果 我尝试过的Javascript 按MongoDB返回的值合并两个对象数组,javascript,arrays,mongodb,mongoose,Javascript,Arrays,Mongodb,Mongoose,问题 我需要合并MongoDB按值返回的两个数组,但是我尝试过的用于常规javascript数组的所有方法都不能正常工作。非常感谢你的帮助 阵列 期望的结果 我尝试过的 _.从lodash合并 _.map&从lodash延伸 各种普通的javascript.map函数 一种可能的解决方案是使用array1并从array2获取相关的info数据,方法是: 常量数组1=[ {u id:'5c6c7132f9bf4bdab9c906ff',用户:'5c65d9438e4a834c8e85dd7d'}
一种可能的解决方案是使用
array1
并从array2
获取相关的info
数据,方法是:
常量数组1=[
{u id:'5c6c7132f9bf4bdab9c906ff',用户:'5c65d9438e4a834c8e85dd7d'},
{u id:'5c6ccd6d3a0dc4e4951c2bee',用户:'5c65d9438e4a834c8e85dd7e'}
];
常数数组2=[
{
_id:'5c65d9438e4a834c8e85dd7d',
信息:{姓名:'约翰',城市:'纽约'}
},
{
_id:'5c65d9438e4a834c8e85dd7e',
信息:{name:'Paneer',city:'sanfran'}
}
];
让merged=array1.map(
o=>({…o,info:array2.find({{u id})=>{u id==o.user.info})
);
console.log(合并)代码>
.as控制台{背景色:黑色!重要;颜色:石灰;}
.作为控制台包装{最大高度:100%!重要;顶部:0;}
array1 = [ { _id: 5c6c7132f9bf4bdab9c906ff,
user: 5c65d9438e4a834c8e85dd7d },
{ _id: 5c6ccd6d3a0dc4e4951c2bee,
user: 5c65d9438e4a834c8e85dd7e } ]
array2 = users [ { _id: 5c65d9438e4a834c8e85dd7d,
info: { name: 'John', city: 'New York' } },
{ _id: 5c65d9438e4a834c8e85dd7e,
info: { name: 'Paneer', city: 'San Fran' } } ]
mergedArray = [ { _id: 5c6c7132f9bf4bdab9c906ff,
user: 5c65d9438e4a834c8e85dd7d,
info: { name: 'John', city: 'New York' } } ,
{ _id: 5c6ccd6d3a0dc4e4951c2bee,
user: 5c65d9438e4a834c8e85dd7e,
info: { name: 'Paneer', city: 'San Fran' } } ]