Моя цель - обновить массив объектов путем сопоставления id
с другим объектом, содержащим соответствующий ключ, для обновления ключа value
массива объектов.
Работа с массивом объектов, например:
const objArr = [
{
id: 6,
name: 'Activity Attendance',
type: 'Number',
value: '2000',
nameChanged: false,
typeChanged: false,
internalName: 'activity_attendance'
},
{
id: 123,
name: 'Total Number of Interacted Consumers',
type: 'Number',
value: '400',
nameChanged: false,
typeChanged: false,
internalName: 'total_number_of_interacted_consumers'
},
{
id: 140,
name: 'Booth Location',
type: 'Select (Single Answer)',
value: '',
nameChanged: false,
typeChanged: false,
internalName: 'booth_location'
}
];
И такой объект, как:
const obj = {
'6': '1500',
'123': '180',
'140': ''
};
Желаемый результат:
const objArr = [
{
id: 6,
name: 'Activity Attendance',
type: 'Number',
value: '1500',
nameChanged: false,
typeChanged: false,
internalName: 'activity_attendance'
},
{
id: 123,
name: 'Total Number of Interacted Consumers',
type: 'Number',
value: '180',
nameChanged: false,
typeChanged: false,
internalName: 'total_number_of_interacted_consumers'
},
{
id: 140,
name: 'Booth Location',
type: 'Select (Single Answer)',
value: '',
nameChanged: false,
typeChanged: false,
internalName: 'booth_location'
}
];
Я пошел по пути отображения objArr
, но не уверен вкак перейти к «соответствию» в пределах obj
, чтобы получить правильное значение для обновления.Моя неудачная попытка:
objArr.map(i => i.id.includes(Object.keys(obj).map(o => Number(o))));
Как я могу объединиться в массив объектов из объекта?