javascript - 合并 2 个对象数组

标签 javascript jquery arrays

让我们看一个例子。

var arr1 = new Array({name: "lang", value: "English"},
                     {name: "age", value: "18"});

var arr2 = new Array({name : "childs", value: '5'},
                     {name: "lang", value: "German"});

我需要合并这 2 个对象数组并创建以下数组:

var arr3 = new Array({name: "lang", value: "German"},
                     {name: "age", value: "18"},
                     {name : "childs", value: '5'});

是否有任何 JavaScript 或 jQuery 函数可以执行此操作?

$.extend 不适合我。它返回

var arr4 = new Array({name : "childs", value: '5'},
                     {name: "lang", value: "German"});

最佳答案

如果你想在 JavaScript 中合并 2 个对象数组。你可以使用这一行技巧

Array.prototype.push.apply(arr1,arr2);

例如

var arr1 = [{name: "lang", value: "English"},{name: "age", value: "18"}];
var arr2 = [{name : "childs", value: '5'}, {name: "lang", value: "German"}];

Array.prototype.push.apply(arr1,arr2); 

console.log(arr1);  // final merged result will be in arr1

输出:

[{"name":"lang","value":"English"},
{"name":"age","value":"18"},
{"name":"childs","value":"5"},
{"name":"lang","value":"German"}]

关于javascript - 合并 2 个对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7146217/

相关文章:

javascript - 如何将 lazyload 和 bxslider 集成在一起?

java - 使用 FileInputStream/ObjectOutputStream 发送大文件

javascript - 如何在刷新时保持输入字段禁用?

javascript - Jquery .click 不会控制台日志或警报

javascript - 为 iphone 移动网络定制的警报框

javascript - 如果当前选择了某些内容,则阻止多个功能

arrays - 错误:LoadError:MethodError:没有方法匹配 Array(::Type{Int8},::Int64,::Int64,::Int64)

c++ - 是否将索引括号用于指针取消引用它?

javascript - Controller 中未定义 Angular 工厂

javascript - 如何优化循环遍历具有大量键的对象,删除包含给定字符串的键?