按对象的日期属性对 JavaScript 数组排序


我们需要编写一个 JavaScript 函数,此函数接收一个类似以下内容的日期对象数组 −

const arr = [
   {date: "2016-06-08 18:10:00"},
   {date: "2016-04-26 20:01:00"},
   {date: "2017-02-06 14:38:00"},
   {date: "2017-01-18 17:30:21"},
   {date: "2017-01-18 17:24:00"}
];

我们需要编写一个 JavaScript 函数,此函数接收一个这样的数组。然后,该函数应根据对象的 date 属性对数组进行排序。

示例

const arr = [
   {date: "2016-06-08 18:10:00"},
   {date: "2016-04-26 20:01:00"},
   {date: "2017-02-06 14:38:00"},
   {date: "2017-01-18 17:30:21"},
   {date: "2017-01-18 17:24:00"}
];
const sortByTime = (arr = []) => {
      arr.sort((a, b) => {
      const dateA = new Date( a.date );
      const dateB = new Date( b.date );
      return dateA < dateB ? -1 :
      ( dateA > dateB ? 1 : 0);
   });
};
sortByTime(arr);
console.log(arr);

输出

控制台中的输出为 −

[
   { date: '2016-04-26 20:01:00' },
   { date: '2016-06-08 18:10:00' },
   { date: '2017-01-18 17:24:00' },
   { date: '2017-01-18 17:30:21' },
   { date: '2017-02-06 14:38:00' }
]

更新于: 2020 年 11 月 21 日

114 次浏览

Kickstart Your Career

完成课程进行认证

开始
广告
© . All rights reserved.