使用javascript

时间:2018-07-03 20:37:59

标签: javascript arrays object

我正在使用javascript管理定义如下的输入对象:

Obj= {first:['a','a','a','a','b','b','b','c','c','c','c'], second:[1,2,4,5,2,7,5,6,3,2,7]} 

a -> 1,2,3,4   
b -> 2,7,5 
c ->  6,3,2,7

我想构建一个输出对象:

output_obj = {a: [1,2,3,4],  b: [2,7,5],  c:[6,3,2,7]}  

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

您可以使用forEach来循环first并从second获取相应的值。

下面是解决该问题的JS代码(ES6)

let data = {first:['a','a','a','a', 'b','b','b','c','c','c','c'], second:[1,2,4,5, 2,7,5  , 6,3,2,7]} 

let out = {};

data.first.forEach((key, index) => {
  out[key] = out[key] || [];
  out[key].push(data.second[index]);
})

console.log(out)