2014-02-25 118 views
0

如何將對象的屬性合併到JavaScript/JQuery中的對象中?如何合併對象屬性並讓它合併到一個對象下

我有以下兩個對象,OBJ & OBJ 2:

var obj = { 
    a: '1', 
    b: '2' 
} 

var obj2 = { 
    c: '3', 
    d: '4' 
} 

我想將它們合併到這樣的事情:

var obj = { 
    a: '1', 
    b: '2', 
    c: '3', 
    d: '4' 
} 

任何幫助將不勝感激!謝謝!

回答

1
var obj = $.extend({},obj,obj2); 

Fiddle

1

您可以使用jquery.extend(),它結合了兩個或多個對象的內容彙集成的第一個對象

$.extend(obj, obj2); 

DEMO

0

Working Fiddle

CODE:

function merge(obj1,obj2){ 
var obj3 = {}; 
for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; } 
for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; } 
return obj3; 
} 
var obj = { 
a: '1', 
b: '2' 
} 

var obj2 = { 
c: '3', 
d: '4' 
} 
alert(merge(obj,obj2)["a"]); 
alert(merge(obj,obj2)["b"]); 
alert(merge(obj,obj2)["c"]); 
alert(merge(obj,obj2)["d"]); 
0

您可以使用還原爲合併多個對象:

function merge() { 
    return [].reduce.call(arguments, function(a,e) { 
    for (var i in e) a[i] = e[i]; 
    return a; 
    },{}); 
} 

var a = {a:'a'}; 
var b = {b:'b'}; 
var c = {c:'c'}; 

merge(a,b,c); //=> {a:'a', b:'b', c:'c'} 
0

試試這個: -

var dT_1 = '{"a": "1", "b":"2"}'; 
var dT_2 = '{"c": "3", "d":"4"}'; 

var jD_1 = JSON.parse(dT_1); 
var jD_2 = JSON.parse(dT_2); 

var obj = $.extend({},jD_1,jD_2); // Object {a: "1", b: "2", c: "3", d: "4"}