我有一个项目的对象数组,这些对象在其中类似于博客的条目。然后,我尝试按每个条目的发布日期(以最近的日期为准)对条目进行排序,但是,显然,排序功能没有考虑年份值或可能缺少的其他问题。
示例情况
其中一个条目于2019年6月23日(6)发布,它是输出数组的第一个值,因为它是日期最近的条目。但是,如果我尝试将其年份更改为类似2005的年份,它将保持在顶部,就像该函数忽略年份一样。我还尝试将其更改为0,但结果保持不变。
我使用的代码
对象数组中的示例项
对于我使用另一个数组的日期,其中索引 0 表示日期,索引 1 表示月份,并将 2 索引到年份。
[{Id: "P3",Date: [23,6,2019]},...]
排序功能
我使用 Date 数组的三个值来计算自第0天起的总天数,并进行比较(最大天数=最近输入)
array.sort((a,b) => ((a.Date[0] + (a.Date[1] * 30) + (a.Date[2] * 365)) < (b.Date[0] + (b.Date[1] * 30) + (b.Date[2] * 365)) ? 1 : -1)).map(item => item.Id)
该函数按顺序输出具有所引用条目的 Id 的数组。
任何帮助修复我的代码的方法都会有所帮助,并且感激不尽:)