jQueryには連想配列をマージするextend関数がある。
$.extend(target [, obj1] [, obj2])
この関数は第1引数に第2引数以降の連想配列を統合していく。
2つの連想配列を1つに統合するには次のようにする。
var a = {a: 1};
var b = {b: 2};
$.extend(a, b); // a = {a: 1, b: 2}
引数を増やしていけば、いくつでも連想配列を統合できる。
var a = {a: 1};
var b = {b: 2};
var c = {c: 2};
$.extend(a, b, c); // a = {a: 1, b: 2, c:3}
連想配列を別の新しい連想配列に統合したい場合は次のように書く。
var a = {a: 1};
var b = {b: 2};
var c = $.extend({}, a, b); // c = {a: 1, b: 2}
キーが重複している場合は後ろで与えたほうの値になる。
var ab = {a: 1, b: 2};
var bc = {b: 3, c: 4 };
var abc = $.extend({}, ab, bc); // abc = {a: 1, b: 3, c: 4}