Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用lodash.groupBy。如何将对象分组到对象中_Javascript_Angularjs_Lodash - Fatal编程技术网

Javascript 使用lodash.groupBy。如何将对象分组到对象中

Javascript 使用lodash.groupBy。如何将对象分组到对象中,javascript,angularjs,lodash,Javascript,Angularjs,Lodash,我使用lodash的uz.groupBy得出以下数据: { "Generic Drugs":[ { itemDes: "Dulcolax", itemGeneric: "Bisacodyl", price: '10' },

我使用lodash的uz.groupBy得出以下数据:

{
   "Generic Drugs":[
                      {
                          itemDes: "Dulcolax",
                          itemGeneric: "Bisacodyl",
                          price: '10'
                      },
                      {
                          itemDes: "Celine",
                          itemGeneric: "Ascorbic Acid",
                          price: '10'
                      },
                          {
                          itemDes: "Vitamic C",
                          itemGeneric: "Ascorbic Acid",
                          price: '10'
                      }
                   ],
  "None-generic Drugs" : [
                           {
                             itemDes: "test 1",
                             itemGeneric: "",
                             price: '10'
                           },
                           {
                             itemDes: "test 2",
                             itemGeneric: "",
                             price: '10'
                           }                                 
                   ]
}
我想通过属性itemGeneric对Generic Drugs对象中的对象进行分组,以得到如下输出:

{
   "Generic Drugs":[
                      "Ascorbic Acid" : [  
                                          { itemDes: "Celine" }, 
                                          { itemDesc: "Vitamin C" }
                                        ],
                      "Bisacodyl" : [
                                       { itemDes: "Dolculax" } 
                                    ]
  "None-generic Drugs" : [
                           {
                             itemDes: "test 1",
                             itemGeneric: "",
                             price: '10'
                           },
                           {
                             itemDes: "test 2",
                             itemGeneric: "",
                             price: '10'
                           }                                 
                   ]
}
请有人帮我解决这个问题。谢谢你的回答。:)

对分组的数据使用
\uuu0.mapValues()
,并按“itemGeneric”对每个值进行分组:

_.mapValues(grouped, function(group, key) {
      return key === 'Generic Drugs' ? _.groupBy(group, 'itemGeneric') : group;
});
var分组={
“仿制药”:[{
项目名称:“Dulcolax”,
itemGeneric:“Bisacodyl”,
价格:'10'
}, {
“席琳”,
通用条款:“抗坏血酸”,
价格:'10'
}, {
“维生素C”,
通用条款:“抗坏血酸”,
价格:'10'
}],
“非仿制药”:[{
itemDes:“测试1”,
itemGeneric:“”,
价格:'10'
}, {
测试2,
itemGeneric:“”,
价格:'10'
}]
};
var result=\映射值(分组,函数(组,键){
return key==='Generic Drugs'?.groupBy(group,'itemGeneric'):group;
});
控制台日志(结果)
在分组的数据上使用
\uuu.mapValues()
,并按“itemGeneric”对每个值进行分组:

_.mapValues(grouped, function(group, key) {
      return key === 'Generic Drugs' ? _.groupBy(group, 'itemGeneric') : group;
});
var分组={
“仿制药”:[{
项目名称:“Dulcolax”,
itemGeneric:“Bisacodyl”,
价格:'10'
}, {
“席琳”,
通用条款:“抗坏血酸”,
价格:'10'
}, {
“维生素C”,
通用条款:“抗坏血酸”,
价格:'10'
}],
“非仿制药”:[{
itemDes:“测试1”,
itemGeneric:“”,
价格:'10'
}, {
测试2,
itemGeneric:“”,
价格:'10'
}]
};
var result=\映射值(分组,函数(组,键){
return key==='Generic Drugs'?.groupBy(group,'itemGeneric'):group;
});
控制台日志(结果)

用于生成问题中前一个对象的代码在哪里?检查输出数据,我没有从5月db获得的数据:仿制药-杜拉克斯-比沙可帝-----------------------------------------------仿制药-维生素C-抗坏血酸-----------------------------------------------仿制药-西林-抗坏血酸-------------------------------------------------------非仿制药|测试2 |--------------------------------------------非仿制药| Alaxan FR |使用此代码生成第一个对象u.groupBy(response.rs,'revDescription');用于生成问题中前一个对象的代码在哪里?检查输出数据,我没有从5月db获得的数据:仿制药-杜拉克斯-比沙可帝-----------------------------------------------仿制药-维生素C-抗坏血酸-----------------------------------------------仿制药-西林-抗坏血酸-------------------------------------------------------非仿制药|测试2 |--------------------------------------------非仿制药| Alaxan FR |使用此代码生成第一个对象u.groupBy(response.rs,'revDescription');不客气:)我对答案进行了一点编辑(
if
到trinary),但逻辑保持不变。不客气:)我对答案进行了一点编辑(
if
到trinary),但逻辑保持不变。