Javascript-同时按日期和字母顺序对数组排序
我有一个包含标题和日期的对象数组Javascript-同时按日期和字母顺序对数组排序,javascript,arrays,sorting,date,alphabetical,Javascript,Arrays,Sorting,Date,Alphabetical,我有一个包含标题和日期的对象数组 [{ title: 'Some title' date: '12.00 PM 17/10/2014' }, ... ] 我需要同时按日期和字母顺序对这些值进行排序,结果如下所示: 我是否应该创建其他数组以记住状态等?或者可以在单个排序方法中执行。您可以在单个排序方法中执行。它的骨骼是: yourArray.sort(function(a, b) { var adate = /* ...parse the date in a.date...
[{
title: 'Some title'
date: '12.00 PM 17/10/2014'
},
...
]
我需要同时按日期和字母顺序对这些值进行排序,结果如下所示:
我是否应该创建其他数组以记住状态等?或者可以在单个排序方法中执行。您可以在单个排序方法中执行。它的骨骼是:
yourArray.sort(function(a, b) {
var adate = /* ...parse the date in a.date... */,
bdate = /* ...parse the date in b.date... */,
rv = adate - bdate;
if (rv === 0) {
rv = a.title.localeCompare(b.title);
}
return rv;
});
我将把这个奇怪的日期格式的解析留给读者作为练习…你有权访问矩.js吗?提示:如果你可以从日期/时间中得到一个格式为YYYY/MM/DD HH:MM:ss的字符串,并将其与标题连接起来,那么你就可以根据这个合并的数据对数组进行排序。现在讨论。
yourArray.sort(function(a, b) {
var adate = /* ...parse the date in a.date... */,
bdate = /* ...parse the date in b.date... */,
rv = adate - bdate;
if (rv === 0) {
rv = a.title.localeCompare(b.title);
}
return rv;
});