重新组合数组以匹配另一个数组的排列

时间:2014-07-15 15:25:25

标签: javascript arrays sorting

我需要重新组合这两个数组:

arrayOne = ['A', 'B', 'C', 'D', 'A', 'C'];
arrayTwo = ['1', '2', '3', '4', '5', '6'];

这是我正在寻找的输出:

groupedOutput = {
  'A': ['1', '5'],
  'B': ['2'],
  'C': ['3', '6'],
  'D': ['4']
}

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

var groupedObj = {};
for(var i = 0; i< arrayOne.length; i ++) {
    if (typeof groupedObj[arrayOne[i]] === "undefined") groupedObj[arrayOne[i]] = [];
    groupedObj[arrayOne[i]].push(arrayTwo[i]);
}

groupedObj将包含您想要的结果

答案 1 :(得分:0)

这是代码(但我留下了一些事情让你这样做):

var aar = [][]
for(var i = 0 ; i<arrayone.length ; i++)
{
    arr[i][0] = arrayone[i];
    arr[i][1] = arraytwo[i];
}
for(var i = 0 ; i<arrayone.length ; i++)
{
    for(var j = i ; j<arrayone.length ; j++)
    {
        if(arr[i] == arr[j])
        {
           arr[i][1] = arr[i][1] + " , " + arr[j][1];
        }
    }
}