在循环中,我试图合并两个数组的内容:
var myArray = [{a:"a"},{b:"b"}];//first pass in loop
var myArray = [{c:"c"},{d:"d"}];//second pass in loop
结果,我想有这个:
results = [{a:"a"},{b:"b"},{c:"c"},{d:"d"}];
如果我在每次通过时都这样做:
results.splice(0,0,array[i]);
然后results
数组变成两个数组的集合,而不是四个对象的集合。
我尝试了.concat
,但这没效果。
有没有办法将包含对象数组的对象与另一个对象数组合并而不使用for()
和push()
的组合?
我必须有一些简单的错过。
由于
答案 0 :(得分:4)
实际上,concat是正确的方法 在你的例子中,你是两次定义myarray。希望你的代码不是这种情况。当我尝试
时var myArray1 = [{a:"a"},{b:"b"}];
var myArray2 = [{c:"c"},{d:"d"}];
var result = myarray1.concat(myarray2);
这必须奏效。如果没有,那么请在浏览器中向我们展示这三行的结果