如何使用javascript合并2个数组?

时间:2017-11-06 08:35:50

标签: javascript arrays

我将使用一个数组键合并2个数组,使用键合并其他数组,并获取其他数组值并在最后创建最后一个数组。我在这里写了一些逻辑,但我只是把第一个数组键推,但其他数组值不能推入最终数组。所以任何人都知道如何做到那么请让我在这里。在这里,我已经用数组列出了我的代码。

这是我的第一个数组=>

var arr = ["fullName","username","biography","externalurl","followerCount","followingCount","medaiCount"];

这是我的另一个数组=>

var FinalFilterArray = [ { fullName: 'love',
                    username: 'lo.ve632',
                    biography: '',
                    externalUrl: '',
                    followerCount: 13,
                    followingCount: 129,
                    mediaCount: 0 },
                { fullName: 'abc',
                    username: '@abc',
                    biography: '',
                    externalUrl: '',
                    followerCount: 289,
                    followingCount: 262,
                    mediaCount: 0 }]; 

这是我的逻辑=>

   var ExcelData = [];
    for (var i = 0; i < FinalFilterArray.length; i++) {
        console.log("f" + FinalFilterArray.length)
        if (i == 0) {
            ExcelData[i] = arr
        }
        else {
            var key = [];
            for (var j = 0; j < arr.length; j++) {
                console.log("j " + arr[j]) if(FinalFilterArray[i] == arr[j]){key.push[FinalFilterArray[i].arr[j]]}

            }                       
            ExcelData[i] = [key]
        }
    } 

我的预期o \ p =&gt;

 [[ 'fullName',
'username',
'biography',
'externalUrl',
'followerCount',
'followingCount',
'mediaCount' ],
['love','lo.ve632','','','13','129','0'] ,
 ['abc','@abc','','','289','262','0']] 

1 个答案:

答案 0 :(得分:2)

finalArr = [ arr , ...FinalFilterArray.map(item => arr.map(key => item[key])) ]

如果您需要es5解决方案,请使用

finalArr = [arr].concat(FinalFilterArray.map(function(item){
    return arr.map(function(key) {
        return item[key]
    })
})