为了账号安全,请及时绑定邮箱和手机立即绑定

一个关于对象深合并的问题?

一个关于对象深合并的问题?

红颜莎娜 2018-10-11 10:11:37
现有两个对象:我想通过deepMerge(obj1, obj2)以后最终能得到(要用原生js):这个题目想了很久没想出来怎么解,也想过用递归和Object.assign但是得不到想要的结果,希望大神指点指点。
查看完整描述

1 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

function deepMerge(obj1, obj2) {

    var key;

    for(key in obj2) {

        // 如果target(也就是obj1[key])存在,且是对象的话再去调用deepMerge,否则就是obj1[key]里面没这个对象,需要与obj2[key]合并

        obj1[key] = obj1[key] && obj1[key].toString() === "[object Object]" ?

        deepMerge(obj1[key], obj2[key]) : obj1[key] = obj2[key];

    }

    return obj1;

}


查看完整回答
反对 回复 2018-11-29
  • 1 回答
  • 0 关注
  • 580 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信