【发布时间】:2018-04-05 13:40:36
【问题描述】:
我想使用 lodash 对以下时间戳数组进行排序,因此最新的时间戳排在第一位 [3]。
代码:
let timestamps = ["2017-01-15T19:18:13.000Z", "2016-11-24T17:33:56.000Z", "2017-04-24T00:41:18.000Z", "2017-03-06T01:45:29.000Z", "2017-03-05T03:30:40.000Z"]
const sorted = _.sortBy(timestamps);
这不像我预期的那样工作,我相信它对它们进行排序,但按升序排列。
【问题讨论】:
-
["2017-01-15T19:18:13.000Z", "2016-11-24T17:33:56.000Z", "2017-04-24T00:41:18.000Z", "2017-03-06T01:45:29.000Z", "2017-03-05T03:30:40.000Z" ].sort()- 不需要 lodash -
您是否有一个具有给定 iso 日期的数组,或者您是否有一个具有时间戳属性的对象数组?
-
@mplungjan 这在 asc 而不是 desc 中的作用相同。我需要从高到低
-
@Kay,我想你正在寻找
_.orderBy()而不是_.sortBy() -
@Kay 然后改成
arr.sort( (a, b) => b > a ? 1 : -1 )
标签: javascript lodash