javascript - javascript 日期数组排序

标签 javascript jquery arrays

我有一个日期数组 $myArray

(2012-09-31,1999-01-23,2018-08-29,1808-04-20,2017-11-05,1001-10-01,)

我想按从最近到最旧的顺序列出这些日期,我正在使用一个函数

function myFunction() {
myArray.sort(function(a, b){return b-a});
}

上面的函数似乎没有以任何特定的方式对数组进行排序。

最佳答案

在这种特殊情况下,您实际上可以使用 .localeCompare()进行比较。

原因是您的日期字符串的格式是从最一般到最具体,并且长度都相同。

var myArray = ['2012-09-31', '1999-01-23', '2018-08-29', '1808-04-20', '2017-11-05', '1001-10-01'];

function myFunction() {
  myArray.sort(function(a, b) {
    return b.localeCompare(a);
  });
}

myFunction();

console.log(myArray);

如果可以删除月份或日期的前导 0,或者格式为 yyyy-dd-mm,则此方法将不起作用月-日-年

关于javascript - javascript 日期数组排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45941478/

相关文章:

javascript - Vue.js 对象代理 : props not showing in Object. 键

javascript - 时间戳 php 转 jquery 格式

python - 单括号和双括号 Numpy 数组有什么区别?

javascript - 将数组值从 php 复制到 javascript

javascript - jQuery 选择第 n 个子元素

javascript - 我根据解决方案按类对 <li> 元素进行分组,但需要帮助理解它的工作原理

javascript - 如何从日期时间的末尾删除字母 "Z"

javascript - 用于多个输入的 jQuery Datepicker

javascript - Jquery淡入淡出问题

javascript - 如何将 JSON 字符串转换为包含对象的数组