Как объединить два массива объектов в один массив объектов на основе ключа?
я пытаюсь объединить два массива объектов на основе ключа. два массива таких объектов,
let array1 = [
{
name: "Deepak",
age: 20
},
{
name: "John",
age: 30
}
]
let array2 = [
{
name: "Deepak",
favGame: "Cricket"
},
{
name: "John",
favGame: "Football"
},
{
name: "Kailash",
favGame: "Basketball"
}
]
Я столкнулся с трудностями при слиянии в ожидаемом формате. Я ожидаю такой формат
let finalArray = [
{
name: "Deepak",
age: 20,
favGame: "Cricket"
},
{
name: "John",
age: 30,
favGame: "Football"
},
{
name: "Kailash",
favGame: "Basketball"
}
]
4 ответа
Вы можете использоватьArray.reduce()
группировать элементы по .
Это создаст объект со свойством для каждогоname
затем мы можем использоватьObject.values()
чтобы вернуть результат в виде массива.
Поскольку мы используем объект сопоставления, этот подход будет эффективен для больших массивов.