Ответ 1
jQuery $. extend будет делать то, что вы хотите.
//merging two objects into new object
var new_object = $.extend({}, object1, object2);
//merge object2 into object1
$.extend(object1, object2);
Как объединить объекты jquery вместе
У меня
{
"merchantcontract":"Ready Reserve Foods 10104.01",
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":15.2600,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
},
{
"merchantcontract":"Ready Reserve Foods 10104.01",
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":2.6000,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
}
Я хотел бы иметь
{
"merchantcontract":"Ready Reserve Foods 10104.01",
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":15.2600,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
},
{
"merchantcontract":"Ready Reserve Foods 10104.01",
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":2.6000,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
}
{"merchantcontract":"Ready Reserve Foods 10104.01"{
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":15.2600,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
},
{
"merchantcontractid":"c4253769-5a57-e111-b935-00155d010302",
"smi_transactiondate":"\/Date(1332140400000)\/",
"smi_glamount2":2.6000,
"smi_transactionclass":180870001,
"smi_transactionclassname":"Residual Agent Commission",
"smi_contractprodcutidname":"Traditional",
"smi_agentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5",
"smi_primaryagentid":"1d3f44ee-afc3-e011-addf-a4badb1ddef5"
}
}
Таким образом, оба объекта находятся под одним объектом. У меня может быть более двух объектов.
Объекты создаются с каждым в jquery.
Я не уверен, как начать с этого.
jQuery $. extend будет делать то, что вы хотите.
//merging two objects into new object
var new_object = $.extend({}, object1, object2);
//merge object2 into object1
$.extend(object1, object2);
anObj={'propone':'1', 'proptwo':'2'};
anotherObj={'propel':'11', 'proptlv':'12'};
var opts = {};
$.extend(opts, anObj, anotherObj, {
bar: "baz",
thing: "foo"
});
console.log(opts);
Если вы хотите рекурсивно их объединить, $. extend предлагает аргумент deep
. В случае deep=true
слияние становится рекурсивно. Пример выше,
// Initialize two objects.
var json1 = { "a": { "a1": "value1", "a2": "value2" }};
var json2 = { "a": { "a3": "value3" }};
// Merge them recursively.
var newJson = $.extend(true, {}, json1, json2);
// Test it.
if (newJson.a.a1 && newJson.a.a3) {
console.log("Success");
}
можете ли вы поместить их в массив?
var myObjects = [];
и в каждом из них, где они созданы, просто добавьте:
myObjects.push(newObject);