2つのオブジェクトがあり、同じ値を上書きするだけで1つに結合したいと考えています。ディープコピーを持たず、オブジェクトの配列を上書きしない2つのオブジェクトを拡張する
var objOne = { current: 1, sort: { 'foo' : 'bar' }, search: [ { name: 'a', value: 1 }, { name: 'b', value: 2 } ] };
var objTwo = { sort: { 'john' : 'doe' }, search: [ { name: 'a', value: 3 } ] };
ディープコピーなしで$ .extendsを試してみましたが、配列オブジェクトを除くすべての要素でうまく動作します。
var objAll = $.extend({}, objOne, objTwo);
objAll -> { current: 1, sort: { 'john' : 'doe' }, search: [{ name: 'a', value: 3 }] };
私の目標は、同じ名前を持つオブジェクトのこの
objAll -> { current: 1, sort: { 'john' : 'doe' }, search: [{ name: 'a', value: 3 },{ name: 'b', value: 2 }] };
上書きのみ配列を取得することです。
どうすればいいですか?ありがとう
あなたは配列に更新するかを、知っていますか2 foreachの –
でオブジェクトを作成? –
最後に上書きします($ extendのように) –