【问题标题】:Merging 2 arrays based on one common key angular 2基于一个公共键 angular 2 合并 2 个数组
【发布时间】:2017-06-02 15:44:53
【问题描述】:

我在Angular 2 中有 2 个arrays,我想根据一个键值合并它们。

数组 1:

[{"columnId":1,"type":"value 1"},{"columnId":2,"type":"value 2"}]

数组 2:

[{"columnId":1,"field":"field 1"},{"columnId":2,"field":"field 2"}]

所以我想要最终结果为

[{"columnId":1,"field":"field 1","type":"value 1"},{"columnId":2,"field":"field 2","type":"value 2"}]

【问题讨论】:

    标签: javascript arrays typescript merge


    【解决方案1】:

    这应该做你想做的:

    const arr1 = [{"columnId":1,"type":"value 1"},{"columnId":2,"type":"value 2"}];
    const arr2 = [{"columnId":1,"field":"field 1"},{"columnId":2,"field":"field 2"}];
    
    const result = arr1.map(val => {
        return Object.assign({}, val, arr2.filter(v => v.columnId === val.columnId)[0]);
    });
    
    console.log(result);
    // [{"columnId":1,"field":"field 1","type":"value 1"},{"columnId":2,"field":"field 2","type":"value 2"}]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-29
      • 2021-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多