要按日期对JSON对象数组进行排序,可以使用JavaScript的sort()
方法和new Date()
函数结合来实现。
首先,假设有一个JSON对象数组如下所示:
let data = [
{ date: "2021-01-15", name: "John" },
{ date: "2021-02-12", name: "Anna" },
{ date: "2021-03-25", name: "Peter" },
// 更多对象...
];
要按日期对该数组进行排序,可以使用sort()
方法,其中传入一个比较函数作为参数。比较函数需要接受两个参数,分别代表数组中的两个对象,然后返回一个负数、零或正数,以指示两个对象的顺序。
比较函数可以使用new Date()
函数将日期字符串转换为日期对象,然后使用getTime()
方法获取日期的时间戳,进而进行比较。代码示例如下:
data.sort(function(a, b) {
let dateA = new Date(a.date);
let dateB = new Date(b.date);
return dateA.getTime() - dateB.getTime();
});
经过上述排序后,data
数组将按照日期从早到晚的顺序进行排序。
完整示例代码如下:
let data = [
{ date: "2021-01-15", name: "John" },
{ date: "2021-02-12", name: "Anna" },
{ date: "2021-03-25", name: "Peter" },
// 更多对象...
];
data.sort(function(a, b) {
let dateA = new Date(a.date);
let dateB = new Date(b.date);
return dateA.getTime() - dateB.getTime();
});
console.log(data);
输出结果为:
[
{ date: "2021-01-15", name: "John" },
{ date: "2021-02-12", name: "Anna" },
{ date: "2021-03-25", name: "Peter" },
// 更多对象...
]
上一篇:按日期对关联的数据进行排序