2016-04-06 22 views
0

İki nesne dizisi olmayan iki nesne dizisini, aynı anahtar 'id' anahtarıyla birleştirmek nasıl?Çift nesne dizilerini kaldırarak iki nesne dizisini birleştirir Javascript Jquery

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"}]; 

ve sonuç dizi olmalıdır,

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

kimliğine sahip eleman "1" dizi2 eklenmelidir.

cevap

1

bu deneyin ..... İlk bunları birleştirmek, sonra kaldırmak yinelenen

$.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; 
    } 
});