【问题标题】:Merging two object arrays by removing duplicates Javascript Jquery通过删除重复的Javascript Jquery合并两个对象数组
【发布时间】:2016-07-26 09:49:29
【问题描述】:

如何合并两个没有两个元素相同键'id'的对象数组?

var array1 = [{id:"1", expected:"aaa", actual:"xxx"}, {id:"2", expected:"bbb", actual:"yyy"}];
var array2 = [{id:"1", expected:"kkk", actual:"xxx"}, {id:"4", expected:"ccc", actual:"zzz"}];

结果数组应该是,

var array3 = [{id:"1", expected:"kkk", actual:"xxx"}, , {id:"2", expected:"bbb", actual:"yyy"}, {id:"4", expected:"ccc", actual:"zzz"}];

id为“1”的元素应该从array2中添加。

【问题讨论】:

    标签: jquery arrays object merge duplicates


    【解决方案1】:

    试试这个..... 先合并,再删除重复的

    $.merge(array1, array2);
    
    var existingIDs = [];
    array1 = $.grep(array1, function(v) {
        if ($.inArray(v.id, existingIDs) !== -1) {
            return false;
        }
        else {
            existingIDs.push(v.id);
            return true;
        }
    });
    

    【讨论】:

      猜你喜欢
      • 2012-02-26
      • 2018-11-14
      • 2016-08-31
      • 1970-01-01
      • 2021-05-09
      • 1970-01-01
      • 2013-07-06
      • 2010-12-07
      相关资源
      最近更新 更多