js将两个对象合并 数据一一对应

图片描述

这样两个对象如何合并成obj3的格式???求指教

阅读 7.5k
2 个回答
const obj1 = {"name":"","age":"","salary":""};
const obj2 = [
    {"desc":"年龄",content:"25"},
    {"desc":"薪资",content:"3000"},
    {"desc":"姓名",content:"李杰"}
];
//汉英字典映射
const dict = {
    "年龄":"age",
    "薪资":"salary",
    "姓名":"name"
}
const obj3 = {...obj1};
obj2.forEach(item=>{
    if(item.desc in dict){
        const key = dict[item.desc];
        const value = item.content;
        obj3[key] = value;
    }
});
console.log(obj3);

clipboard.png

建议将desc 写成英文 name / age / salary
就可以这样写

for (var i = 0; i < obj2.length; i++) {
    obj1[obj2[i].desc] = obj2[i].content
}

不然你就只能通过下标来取值了.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题