我有两个数组:
const people = [{id:1, name:"John"}, {id:2, name:"Alice"}];
const address = [{id:1, peopleId: 1, address: "Some street 1"}, {id:2, peopleId: 2, address: "Some street 2"}]
如何过滤这两个数组并得到这样的一个:
const fullData = [{id: 1, name: "John", address: "Some street 1"}, {id: 2, name: "Alice", address: "Some street 2"}]
最佳答案
你可以试试这个。
借助map()
和find()
const people = [{id:1, name:"John"}, {id:2, name:"Alice"}];
const address = [{id:1, peopleId: 1, address: 'Some street 1'}, {id:2, peopleId: 2, address: 'Some street 2'}]
let op = people.map((e,i)=>{
let temp = address.find(element=> element.id === e.id)
if(temp.address) {
e.address = temp.address;
}
return e;
})
console.log(op);
关于Javascript 映射两个对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53647473/