如何合并2个javaScript数组
How to merge 2 javaScript Array?
我有两个数组
我想将第二个数组中的字段值与第一个数组合并。
每个值(即"Test")属于在第二数组的_embedded部分(_embedded. profilefield .id)中列出的Profile Field id。
第一个数组:Profile Fields
0: Object
field: "FieldLabel1"
id: 1
1: Object
field: "FieldLabel2"
id: 7
2: Object
field: "FieldLabel3"
id: 12
第二个数组:配置文件字段值
0: Object
id: 1
value: "Test"
_embedded: Object
profileField: Object
field: "FieldLabel1"
id: 1
1: Object
id: 2
value: "links"
_embedded: Object
profileField: Object
field: "FieldLabel2"
id: 7
我怎么能得到一个数组与两个信息在一起?
使用数组方法中的map
和filter
, U可以将这些数组与您需要的条件合并。请参考以下示例:
/* your arrays definition */
var a = [{
field: "FieldLabel1",
id: 1
}, {
field: "FieldLabel2",
id: 7
}, {
field: "FieldLabel3",
id: 12
}
];
var b = [{
id: 1,
value: "Test",
_embedded: {
profileField: {
field: "FieldLabel1",
id: 1
}
}
}, {
id: 2,
value: "links",
_embedded: {
profileField: {
field: "FieldLabel2",
id: 7
}
}
}];
/* mergedArray contains merged data from two arrays arranged by id */
var mergedArray = a.map(function(aItem){
var value = b.filter(function(bItem) {
return aItem.id === bItem._embedded.profileField.id;
}).map(function(item){
return item.value;
}).pop();
aItem.value = value;
return aItem;
});
的结果是:
margedArray: Array[3]
0: Object
field: "FieldLabel1"
id: 1
value: "Test"
1: Object
field: "FieldLabel2"
id: 7
value: "links"
2: Object
field: "FieldLabel3"
id: 12
value: undefined
嗨,简单地使用Jquery,见下面的代码!
For Array:
var newArray = $.merge(1Array, 2Array);
对象:var object = $.extend({}, object1, object2);
For array: jquery merge array
For Object: jquery merge Object
谢谢
相关文章:
- 操作员”;新的“;根据我想在几个JavaScript文件中使用的类,在JavaScript中使用
- 组合两个javascript函数
- 组合 2 个 JavaScript .scroll 函数
- 如何使用多个javascript
- 同一网页中有多个javascript标记
- 比较包含多个值对的两个JavaScript数组
- 使用多个JavaScript Onload函数
- 如何使用按钮'的OnClientClick属性,以便在ASP.NET中运行一些多个JavaScript函数
- 如果没有document.ready(),我怎么能拥有多个javascript函数呢
- 为什么这两个JavaScript函数调用具有相同的“;这个“;价值
- 无法延迟iPhone/iPad上的两个JavaScript操作
- 想要在php中的一个文件中写入2个JavaScript变量
- $(document)中的多个javascript函数.ready不工作
- 比较IF条件下的两个javascript数值
- 我可以在两个javascript文件之间传递一个字符串吗?
- 集成多个JavaScript应用程序
- 多个 Javascript 文件,但只有一个 HTTP 请求
- 多个JavaScript子例程的实时DOM显示
- 循环中的多个 JavaScript 延迟
- 使用多个 JavaScript