ech*_*hez 21 ajax merge jquery json object
我有两个json对象:
http://example.com/search.json?section=saloon
和
http://example.com/search.json?section=coupe
我一直在寻找一种方法将这两个对象组合成一个对象.
提前致谢.
Raf*_*fay 52
使用 extend
var object = $.extend({}, object1, object2);
Run Code Online (Sandbox Code Playgroud)
通过传递一个空对象作为目标(第一个)参数,您可以保留两个对象,但是如果要合并第二个对象,则可以像
$.extend(object1, object2);
Run Code Online (Sandbox Code Playgroud)
好吧,一旦你的JSON被提取和解析,你可以遍历属性并将它们添加到一个新对象.但要小心,如果有相同名称的属性,它们将被覆盖.
var data1 = '{"foo": 123, "test":"foo"}';
var data2 = '{"bar": 456, "test":"bar"}';
var json1 = JSON.parse(data1);
var json2 = JSON.parse(data2);
var merged = {};
for(var i in json1) {
if (json1.hasOwnProperty(i))
merged[i] = json1[i];
}
for(var i in json2) {
if (json2.hasOwnProperty(i))
merged[i] = json2[i];
}
console.log(merged);
Run Code Online (Sandbox Code Playgroud)
生成的合并JSON对象将是:
{foo: 123, test: "bar", bar: 456}
Run Code Online (Sandbox Code Playgroud)
编辑: 正如3nigma所提到的,如果您使用的是jQuery,那么您最好使用它$.extend
.如果您不想修改现有对象,请不要忘记首先传递空对象.
归档时间: |
|
查看次数: |
45703 次 |
最近记录: |