我有一个 JavaScritpt 日期排序问题。我有一个最多包含 24 个日期的数组,需要按降序排序。日期采用完整日期格式。我成功转换为 mm/dd/yyyy。我意识到我不能使用排序,我相信我需要进行排序比较。
我的日期如下所示
eventDatesArrray = ,11/30/2014,12/31/2018,12/31/2013,10/11/2016,10/12/2015
我确实引用了Sort Javascript Object Array By Date 。我很抱歉,但我不相信我完全理解它是如何工作的,因为我继续收到一条错误消息,指出我没有传递参数。不确定如何将 a 和 b 传递给此函数。
var sortedEventDates = eventDatesArrray .sort(function(a, b) {
return a>b ? -1 : a<b ? 1 : 0;
});
预先感谢您的帮助。 艾里森
最佳答案
如果日期是字符串:
dates = ["10/12/2014", "12/12/2015", "12/31/2015", "14/08/2015"]
dates.sort(function(a, b) {
var parseDate = function parseDate(dateAsString) {
var dateParts = dateAsString.split("/");
return new Date(parseInt(dateParts[2], 10), parseInt(dateParts[1], 10) - 1, parseInt(dateParts[0], 10));
};
return parseDate(b) - parseDate(a);
});
["12/31/2015", "12/12/2015", "14/08/2015", "10/12/2014"]
关于JavaScript 按日期排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38946391/