首页 > 解决方案 > 在 Javascript 中,如何将对象数组压缩为带有数组的对象数组?

问题描述

我一直在寻找答案,但我不太确定我是否正确解释了问题以找到正确的答案。所以本质上我有一个包含许多对象的数组,其中大部分数据是相同的,我想将对象压缩到更好地处理数据

所以我目前有类似的东西:

var inStock =[
{"colour":"blue","type":"xs","item" : "shirt"},
{"colour":"blue","type":"xs","item" : "socks"},
{"colour":"pink","type":"xs","item" : "shirt"},
{"colour":"pink","type":"xl","item" : "socks"},
{"colour":"pink","type":"xl","item" : "shoes"}
];

我想写一些 JS 来把它转换成类似的东西:

var inStock = [
  { 
    "colour":"blue",
    "type":{
       "xs",["shirt","socks"]
    }
  },
  {
    "colour":"pink",
    "type":{
       "xs":["shirt"],
       "xl":["socks","shoes"]
    }
  }
];

我本质上是在尝试将数据组织到某种层次结构系统中,以更好地组织数据。我不确定是否有办法做到这一点——但我愿意接受其他有助于压缩数据的组织建议。

标签: javascriptarraysobject

解决方案


推荐阅读