如何替换数组中的指定对象

 时间:2024-10-12 13:01:39

1、arr1.map(obj => arr2.find(o => o.id === obj.id) || obj);

2、var arr1 = [{ id: '124', name: 'qqq'}, { id: '589', name: 'www'}, { id: '45', name: 'eee'}, { id: '567', name: 'rrr'}];var arr2 = [{ id: '124', name: 'ttt'}, { id: '45', name: 'yyy'}];var res = arr1.map(obj => arr2.find(o => o.id === obj.id) || obj);console.log(res);

3、我将问题分解为两个函数以提高可读性:// The following function is used for each itertion in the fu荏鱿胫协nction updateObjectsInArrconst newObjInInitialArr = function(initialArr, newObject) { let id = newObject.id; let newArr = []; for (let i = 0; i < initialArr.length; i++) { if (id === initialArr[i].id) { newArr.push(newObject); } else { newArr.push(initialArr[i]); } } return newArr;};const updateObjectsInArr = function(initialArr, newArr) { let finalUpdatedArr = initialArr; for (let i = 0; i < newArr.length; i++) { finalUpdatedArr = newObjInInitialArr(finalUpdatedArr, newArr[i]); } return finalUpdatedArr}const revisedArr = updateObjectsInArr(arr1, arr2);

  • 烟雨江湖如何进行加点
  • 烟雨江湖怎么完成初出茅庐任务?
  • 烟雨江湖怎么寻找到李长顺恩人
  • 烟雨江湖酒艺攻略
  • 烟雨江湖随从怎么获得
  • 热门搜索
    黄龙玉怎么样 怎么把ppt转成图片 如何补锌 xls文件怎么打开 如何保护肾脏 联通人工服务怎么打 如何快速丰胸 路由器怎么设置密码 2016年奥运会在哪里举行 手机如何刷机