可以使用以下代码实现:

// 先将日期字符串转换为日期对象并降序排列 const dates = ['2021-11-01', '2021-01-01', '2023-06-05', '2019-03-01', '2023-06-21'] .map(dateStr => new Date(dateStr)) .sort((a, b) => b - a);

// 将药品数据按照日期处理成对象 const medicineData = [ {medicineName: '甲氧西林', '2021-01-01': {有数据}, '2019-03-01': {有数据}, '2023-06-21': {有数据}, solvent: false}, {medicineName: '氯唑西林 ', '2021-01-01': {有数据}, solvent: false}, {medicineName: '氯唑西林', '2021-01-01': {有数据}, '2023-06-05': {有数据}, '2023-06-21': {有数据}, solvent: false}, {medicineName: '青霉素V', '2023-06-21': {有数据}, solvent: false} ];

// 循环处理每个药品数据 const processedData = medicineData.map(medicine => { const processedMedicine = {...medicine}; // 先复制对象,避免修改原数据

// 循环处理每个日期 dates.forEach(date => { const dateStr = formatDate(date); // 先将日期对象转换为字符串 if (!processedMedicine[dateStr]) { // 如果该日期没有数据,则添加一个空对象 processedMedicine[dateStr] = {空}; } });

return processedMedicine; });

// 格式化日期为字符串(YYYY-MM-DD) function formatDate(date) { const year = date.getFullYear(); const month = date.getMonth() + 1; const day = date.getDate(); return ${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}; }

// 输出处理后的数据 console.log(processedData);

根据日期排序处理药品数据,方便分析和检索

原文地址: https://www.cveoy.top/t/topic/oUWE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录