#javascript #typescript
#javascript #машинописный текст
Вопрос:
Как мне использовать функцию отображения массива для замены одного из обновленных объектов?
У меня есть массив объекта. Свойство объекта может быть обновлено пользователем. После успешного завершения операции необходимо обновить локальный кэш.
private _setUpdatedReportingEntity( collection:Array<any>, item:ReportingEntity): any
{
let updatedCollection = collection.map( function(v){
if( v.otherCompanyId === item.otherCompanyId){
return item;
}else{
return v;
}
});
return updatedCollection;
}
Заменит ли эта функция старый объект новым объектом?
Ответ №1:
Да, он заменит старый объект новым объектом в обновленном массиве, созданном с помощью map
метода, без изменения исходного массива.
Вы можете использовать ES6 и сократить код.
collection.map(v => (v.otherCompanyId === item.otherCompanyId ? item : v));