jac*_*gel 85
根据您在评论中的描述,您只需执行数组连接:
var jsonArray1 = [{'name': "doug", 'id':5}, {'name': "dofug", 'id':23}];
var jsonArray2 = [{'name': "goud", 'id':1}, {'name': "doaaug", 'id':52}];
jsonArray1 = jsonArray1.concat(jsonArray2);
// jsonArray1 = [{'name': "doug", 'id':5}, {'name': "dofug", 'id':23},
//{'name': "goud", 'id':1}, {'name': "doaaug", 'id':52}];
Run Code Online (Sandbox Code Playgroud)
小智 36
如果您更愿意复制属性:
var json1 = { value1: '1', value2: '2' };
var json2 = { value2: '4', value3: '3' };
function jsonConcat(o1, o2) {
for (var key in o2) {
o1[key] = o2[key];
}
return o1;
}
var output = {};
output = jsonConcat(output, json1);
output = jsonConcat(output, json2);
Run Code Online (Sandbox Code Playgroud)
上面代码的输出是{ value1: '1', value2: '4', value3: '3' }
小智 26
我用:
let x = { a: 1, b: 2, c: 3 }
let y = {c: 4, d: 5, e: 6 }
let z = Object.assign(x, y)
console.log(z)
// OUTPUTS:
{ a:1, b:2, c:4, d:5, e:6 }
Run Code Online (Sandbox Code Playgroud)
从这里开始。
小智 22
您可以使用jquery extend方法.
例:
o1 = {"foo":"bar", "data":{"id":"1"}};
o2 = {"x":"y"};
sum = $.extend(o1, o2);
Run Code Online (Sandbox Code Playgroud)
结果:
sum = {"foo":"bar", "data":{"id":"1"}, "x":"y"}
Run Code Online (Sandbox Code Playgroud)
小智 20
实际的方法是使用JS Object.assign.
Object.assign(target, ...sources)
Run Code Online (Sandbox Code Playgroud)
还有另一个针对ES7提出的对象扩展运算符,可以与Babel插件一起使用.
Obj = {...sourceObj1, ...sourceObj2}
Run Code Online (Sandbox Code Playgroud)
Sov*_*iut 14
一种解决方案是使用列表/数组:
var first_json = {"name":"joe", "age":27};
var second_json = {"name":"james", "age":32};
var jsons = new Array();
jsons.push(first_json);
jsons.push(second_json);
Run Code Online (Sandbox Code Playgroud)
结果
jsons = [
{"name":"joe", "age":27},
{"name":"james", "age":32}
]
Run Code Online (Sandbox Code Playgroud)
小智 9
如果使用 TypeScript,则可以使用扩展运算符 ( ...)
var json = {...json1,...json2}
Run Code Online (Sandbox Code Playgroud)
好的,您可以用一行代码完成此操作。为此你需要 json2.js (你可能已经有了。)。这里的两个 json 对象是未解析的字符串。
json1 = '[{"foo":"bar"},{"bar":"foo"},{"name":"craig"}]';
json2 = '[{"foo":"baz"},{"bar":"fob"},{"name":"george"}]';
concattedjson = JSON.stringify(JSON.parse(json1).concat(JSON.parse(json2)));
Run Code Online (Sandbox Code Playgroud)
您可以使用Object.assign()方法。Object.assign()方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。[1]
var o1 = { a: 1 }, o2 = { b: 2 }, o3 = { c: 3 };
var obj = Object.assign(o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
185673 次 |
| 最近记录: |