Вы можете просто выполнить поиск, как показано ниже, но сложность по времени в этом случае выше (хотя более высокая читаемость и не сложность пространства)
Или вы можете создать карту типа leaveType : hexCode
из первых данныхмассив, а затем использовать карту, чтобы найти соответствующее значение и заполнить второй массив. Проверьте ответ @ CodeManiac для этого подхода.
const data = [{
dateCreated: "2019-10-30 08:29:54 PM",
hexCode: "#ed4c67",
id: 1,
leaveTag: "Vacation Leave",
leaveTagColor: "Bara Red"
},
{
dateCreated: "2019-10-30 08:30:05 PM",
hexCode: "#ea2027",
id: 2,
leaveTag: "Sick Leave",
leaveTagColor: "Red Pigment"
}]
const arr = [{
leaveType: "Emergency Leave",
email: "sfe.bruce.logan@gmail.com",
},
{
leaveType: "Sick Leave",
email: "sfe.bruce.logan@gmail.com"
}]
arr.forEach(leave => {
const matchedLeave = data.find(lv => lv.leaveTag === leave.leaveType);
if(matchedLeave) {
leave.hexCode = matchedLeave.hexCode;
}
});
console.log(arr);