const arrayPrimary = [
{ "id": "1", "location": "France", "price": "12,3" },
{ "id": "2", "location": "Germany", "price": "12,0" },
{ "id": "3", "location": "USA", "price": "10" },
{ "id": "4", "location": "Italy", "price": "16" },
];
const arraySecondary = [
{ "id": "1", "name": "phil", "location": "New York", "price": "1,3", "dd": "lql" },
{ "id": "2", "location": "Paris", "dd": "lql" },
{ "id": "3", "location": "Egypt" },
{ "id": "2", "name": "joe", "location": "London" },
{ "id": "1", "location": "location", "name": "april" },
{ "id": "2", "name": "mei", "location": "Barcelona" },
];
const composed = arrayPrimary.map(d => {
return {
...d,
area: arraySecondary.filter(({id}) => d.id === id)
}
})
console.log(composed)
Run code snippet