Javascript如何将具有相同属性值的两个数组连接在一起?

昵称

如何连接具有相同属性值的数组?我无法映射它,因为它具有不同的索引。

var array1 = [
        {'label':"label1",'position':0},
        {'label':"label3",'position':2},
        {'label':"label2",'position':1},
    ];

var array2 = [
        {'label':"label1",'value':"TEXT"},
        {'label':"label2",'value':"SELECT"}
     ];

预期输出:

var array3 = [
        {'label':"label1",'value':"TEXT",'position':0},
        {'label':"label2",'value':"SELECT", 'position':1}
     ];

这就是我所做的,我无法使其发挥作用,

var arr3 = arr1.map(function(v, i) {
        return {
            "label": v.label,
            "position": v.position,
            "value": arr2[?].value
        }
   });
黑胡子

我想您可以array#reduce用来做这样的事情:

var array1 = [
        {'label':"label1",'position':0},
        {'label':"label3",'position':2},
        {'label':"label2",'position':1},
    ];

var array2 = [
        {'label':"label1",'value':"TEXT"},
        {'label':"label2",'value':"SELECT"}
     ];

var array3 = array2.reduce((arr, e) => {
  arr.push(Object.assign({}, e, array1.find(a => a.label == e.label)))
  return arr;
}, [])


console.log(array3);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将两个数据框连接在一起

量角器将两个具有相同类名的范围连接在一起

如何将两个非常大的数据框与相同的列连接在一起?

如何将两个具有相同键的数组组合在一起?

合并两个具有Employee不同属性的数组列表以创建一个新的数组列表,将两个数组列表的属性组合在一起

如何将这两个配置部分连接在一起?

如何将两个实体对象连接在一起?

如何将两个图像连接在一起?

如何将两个离子应用程序连接在一起?

如何将两个NodeJS docker容器连接在一起?

如何将两个表连接在一起以创建 JSON | PHP

如何将两个列表连接在一起但频率不同

如何将两个壁板连接在一起以形成贯通?

如何将两个子网连接在一起

我有两个匹配的数组。如何将值配对而不将两个相同的值配对在一起?

如何将两个数组“合并”在一起?(逐项连接字符串)

将日期之间的两个数据框连接在一起

dplyr 将两个数据集与条件连接在一起

将两个数据框与公共列连接在一起

将两个数据帧相互连接在一起的问题

如何将两个阵列放在一起比较,如果它们具有相同的OWNERID

如何将两个数据帧列表连接在一起,从而获得带有连接数据帧的第三个列表?

如何将这两个PSQL查询正确地连接在一起?

如何将两个变量连接在一起以创建用户名?

将两个可观察数组连接在一起

将两个numpy数组按索引连接在一起

如何将两个具有十进制值的变量加在一起?

python-如何将两个列值在某个特定2个范围内的数据框连接在一起python?

如何访问使用 django ORM 连接在一起的两个表中的所有模型属性