js问题!!急
1个回答
展开全部
你好,首先说说我的个人想法。
按照题设来看,最终的数据结构设计可能不太合理,我理解的是:
胰岛素分类下面包含:胰岛素AAA、胰岛素BBB等药品
所以,数据结构设计为树状(对象)更为合理,而题设中已数组承载,将分类与具体品类归为一个数组,结构不够清晰。
{
"降压药": ["降压药BBB"],
"胰岛素": ["胰岛素AAA", "胰岛素BBB"]
}
一类药物即为对象的一个属性,
该类药物下包含各种药品(列表)。
分析至此,我将两种数据结构的解析逻辑都写出来,仅供参考:
var data = [
{
id: 2,
medicine_type: '降压药',
medicine_name: '降压药BBB'
},
{
id: 1,
medicine_type: '胰岛素',
medicine_name: '胰岛素AAA'
},
{
id: 3,
medicine_type: '胰岛素',
medicine_name: '胰岛素BBB'
}
];
var category = {}; // 对象分类
var result = []; // 题设结果
data.forEach(function(item) {
var type = item.medicine_type;
if (!category[type]) {
category[type] = [];
}
category[type].push(item.medicine_name);
});
for (var key in category) {
var val = category[key].slice();
val.unshift(key);
result.push(val);
}
console.log(result); // [["降压药","降压药BBB"],["胰岛素","胰岛素AAA","胰岛素BBB"]]
希望是你想要的答案,如有疑问,可追问
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询