Javascript 如何按一个属性对数据进行分组,并获得其他属性的合并数组?

Javascript 如何按一个属性对数据进行分组,并获得其他属性的合并数组?,javascript,arrays,object,Javascript,Arrays,Object,有来自MongoDB集合的CSV数据: {code: "CHN", numbers: "1000", name: "A"} {code: "CHN", numbers: "2000", name: "B"} {code: "FRA", numbers: "3000", name: "C"} {code: "FRA", numbers: "4000", name: "D"} 在前端,我需要按键代码对数据进行分组,并获得如下数组: [ ["CHN", ["1000", "2000"],

有来自MongoDB集合的CSV数据:

{code: "CHN", numbers: "1000", name: "A"}
{code: "CHN", numbers: "2000", name: "B"}
{code: "FRA", numbers: "3000", name: "C"}
{code: "FRA", numbers: "4000", name: "D"}
在前端,我需要按键代码对数据进行分组,并获得如下数组:

  [
   ["CHN", ["1000", "2000"], ["A", "B"]], 
   ["FRA", ["3000", "4000"], ["C", "D"]]
  ]

谢谢。

请包括您遇到问题的代码、您希望它做什么以及它能做什么。如果你只是问我如何将MongoDB与Python结合使用,那就太宽泛了。了解。
const result = [], hash = {};

for(const {code, numbers, name} of input){
   if(hash[code]){
     hash[code][1].push(numbers);
     hash[code][2].push(name);
   } else {
     result.push(hash[code] = [code, [numbers], [name]]);
  }
}