如何解决如何从第二个对象中的每个对象复制技能属性,并根据属性 id 为第一个数组中的每个对象设置该技能属性? (JS)
我有 2 个对象数组。对于每个对象,这两个数组具有相同的长度和相同的 id 属性:
const arr1 = [{id:1,name:'Dave',email:'email1@gmail.com'},{id:2,name:'Jane',email:'email2@gmail.com'}]
const arr2 = [{id:1,profession:'programmer',skill:'JS'},profession:'Sales person',skill:'sales'}]
如何从 arr2 复制每个对象的技能属性,并通过检查相关的属性 id 将其设置在对象的第一个数组中?
解决方法
For each public void onResume() {
player.setPlayWhenReady(true);
super.onResume();
//initiateExoPlayerPlayer();
if(mLastPosition!=0 && player!=null){
player.seekTo(mLastPosition);
}
}
中的值,尝试find arr1
中的相应值并相应地更新技能属性:
arr2
完整片段:
arr1.forEach(v1 => v1.skill = arr2.find(v2 => v1.id === v2.id)?.skill);
你可以这样做。
const arr1 = [{id: 1,name: "Dave",email: "email1@gmail.com"},{id: 2,name: "Jane",email: "email2@gmail.com"}];
const arr2 = [{id: 1,profession: "programmer",skill: "JS"},profession: "Sales person",skill: "sales"}];
console.log(arr1);
arr2.forEach((el2) => {
let result = arr1.find((el1) => el1.id === el2.id)
if (result) {
result.skill= el2.skill;
}
})
console.log(arr1);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。