数组贴图功能

时间:2019-04-23 14:33:59

标签: javascript typescript

如何使用数组映射功能替换更新的对象之一?

我有一个对象数组。 对象属性可以由用户更新。操作成功后,需要更新本地缓存。

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 个答案:

答案 0 :(得分:0)

是的,它将用map方法创建的更新数组中的新对象替换旧对象,而不会更改原始数组。

您可以利用ES6并使代码更短。

collection.map(v => (v.otherCompanyId === item.otherCompanyId ? item : v));