在 JavaScript 中按日期对数组进行排序
javascriptweb developmentfront end technologyobject oriented programming
假设,我们有一个像这样的对象数组 −
const arr = [{id: 1, date: 'Mar 12 2012 10:00:00 AM'}, {id: 2, date: 'Mar 8 2012 08:00:00 AM'}];
我们需要编写一个 JavaScript 函数,该函数接受一个这样的数组并根据每个对象的日期属性对数组进行排序。
(最新的在前或最旧的在前)。
方法应该是将它们转换为 JS 日期对象并比较它们的时间戳以对数组进行排序。
示例
其代码为 −
const arr = [{id: 1, date: 'Mar 12 2012 10:00:00 AM'}, {id: 2, date: 'Mar 8 2012 08:00:00 AM'}]; const sortByDate = arr => { const sorter = (a, b) => { return new Date(a.date).getTime() - new Date(b.date).getTime(); } arr.sort(sorter); }; sortByDate(arr); console.log(arr);
输出
控制台中的输出将是 −
[ { id: 2, date: 'Mar 8 2012 08:00:00 AM' }, { id: 1, date: 'Mar 12 2012 10:00:00 AM' } ]