tableBodyData1value = 2021-11-01 medicationDate 2021-11-01 150101 medicationInfo 氯唑西林 medicineType 抗生素1 medicineName 氯唑西林
这个数据处理可以通过以下步骤实现:
-
遍历原始数据中的每一个日期和药品,生成一个新的对象,并将药品名称作为对象的一个属性。
-
遍历原始数据中的每一个药品,根据日期生成对应的对象属性,将药品信息填充到该属性中。
-
将新生成的对象放入一个数组中,作为最终的结果。
下面是具体的代码实现:
let tableBodyData = [];
// 遍历每一个日期和药品
for (let date in tableBodyData1.value) {
for (let medication of tableBodyData1.value[date]) {
// 生成新的对象
let obj = {
medicineName: medication.medicineName
};
// 遍历每一个药品,根据日期生成对应的对象属性,填充药品信息
for (let d in tableBodyData1.value) {
let medicines = tableBodyData1.value[d].filter(m => m.medicineName === medication.medicineName);
if (medicines.length > 0) {
let medicationObj = {
title: '',
flag: 0,
specification: 0,
dosage: 0,
routeOfAdministration: '',
frequency: '',
doctor: ''
};
for (let m of medicines) {
medicationObj.title += m.medicationInfo + '\n';
medicationObj.specification = m.dosage; // dosage 存的就是规格
}
obj[d] = medicationObj;
}
}
// 将新生成的对象放入数组中
tableBodyData.push(obj);
}
}
``
原文地址: https://www.cveoy.top/t/topic/hlEV 著作权归作者所有。请勿转载和采集!