【发布时间】:2021-11-23 05:22:48
【问题描述】:
您好,我想用另一个对象的另一个属性值更改一个对象的属性值
我有两个数组:
let arr1 = [{id:1, name:'test user', imageURL:''}, {id:1, name:'test user', imageURL:''}, {id:1, name:'test user 3', imageURL:''}];
let arr2 = [{id:1, name:'test user', imageURL:'abcdefghijklmnop'}];
如何在 Typescript 中通过 id 在 arr1 imageURL 中设置来自 arr2 的值 imageURL?
伪代码: 如果 arr2 中的 id 与 arr1 中的 id 匹配,则设置 arr1.imageURL = arr2.imageURL
信息:我不能替换整个对象。
【问题讨论】:
-
将 arr1 和 arr2 转换为对象 id -> url。为 arr2 的每个键赋值 arr1[key] ?? arr2[键]。给我买杯啤酒,我们就完成了。
-
我不允许替换整个对象。仅更改 imageURL 值
-
o1 = toObject arr1; o2 = toObject arr2;对于 o2 { o2[key].url = o1[key]?.url ?? o2[key].url } + 给我买杯啤酒(周五阳光明媚)
标签: javascript arrays angular typescript