我正在使用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]}
有人可以帮忙吗?
答案 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)