我有一系列对象,如:
[
{date: "2016-01-07T15:01:51+00:00", text: "Lorem ipsum"},
{date: "2016-22-08T15:04:36+00:00", text: "dolor"},
// etc.
]
如何通过日期属性对这些进行排序的最佳方法是什么?我已经将这个数组映射到一个react组件,所以我认为在map函数中工作的任何解决方案都是首选,但不是必需的。
我目前正在尝试使用sort()
方法,但无法解决如何将日期属性提供给它的问题。
答案 0 :(得分:3)
您可以拥有自定义排序功能:
var data = [{
date: "2016-07-01T15:01:51+00:00",
text: "Lorem ipsum"
}, {
date: "2016-02-22T15:04:36+00:00",
text: "dolor"
}, {
date: "2015-08-22T15:04:36+00:00",
text: "test"
}]
var result = data.sort(function(a, b) {
var date1 = new Date(a.date);
var date2 = new Date(b.date);
console.log(date1, date2);
return (+date1 - +date2);
});
console.log(result)