JavaScript二维数组日期字符串排序 - 使用Array.sort()方法
要对二维数组按照日期字符串排序,可以使用Array.sort()方法,并传入一个自定义的比较函数。
首先,我们需要编写一个比较函数,该函数接收两个参数,表示要比较的两个元素。在比较函数中,我们将使用new Date()来将日期字符串转换为日期对象,并通过比较日期对象的时间戳来确定它们的顺序。
以下是一个示例代码:
function compare(a, b) {
const dateA = new Date(a[0]);
const dateB = new Date(b[0]);
if (dateA < dateB) {
return -1;
}
if (dateA > dateB) {
return 1;
}
return 0;
}
const arr = [
['2021-01-01', 'Data 1'],
['2020-12-01', 'Data 2'],
['2021-02-01', 'Data 3']
];
arr.sort(compare);
console.log(arr);
输出结果为:
[
['2020-12-01', 'Data 2'],
['2021-01-01', 'Data 1'],
['2021-02-01', 'Data 3']
]
在上面的代码中,我们首先定义了一个比较函数compare,该函数使用new Date()将日期字符串转换为日期对象,并通过比较日期对象的时间戳来确定它们的顺序。然后,我们将二维数组arr传给Array.sort()方法,并传入比较函数compare,以按照日期字符串排序。最后,我们打印排序后的数组arr。
希望能帮助到你!
原文地址: https://www.cveoy.top/t/topic/o3Ua 著作权归作者所有。请勿转载和采集!