use*_*024 3 javascript arrays sorting date
我如何按时间顺序对一组日期进行排序?例如,我有:
var dates = [
'03/03/2014',
'01/03/2014',
'02/03/2014',
'04/03/2014'
];
sortDates = sortDate(dates);
sortDate(array){
// ?
returnt arraySort;
}
Run Code Online (Sandbox Code Playgroud)
我希望结果数组看起来像:
[
'01/03/2014',
'02/03/2014',
'03/03/2014',
'04/03/2014'
]
Run Code Online (Sandbox Code Playgroud)
试试这个(随时询问详细信息):
dates.sort(function (a, b) {
// '01/03/2014'.split('/')
// gives ["01", "03", "2014"]
a = a.split('/');
b = b.split('/');
return a[2] - b[2] || a[1] - b[1] || a[0] - b[0];
});
Run Code Online (Sandbox Code Playgroud)
最后一行的翻译:
dates.sort(function (a, b) {
// '01/03/2014'.split('/')
// gives ["01", "03", "2014"]
a = a.split('/');
b = b.split('/');
return a[2] - b[2] || a[1] - b[1] || a[0] - b[0];
});
Run Code Online (Sandbox Code Playgroud)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort。
假设您的日期格式一致DD/MM/YYYY:
dates.sort(function(a, b){
var aa = a.split('/').reverse().join(),
bb = b.split('/').reverse().join();
return aa < bb ? -1 : (aa > bb ? 1 : 0);
});
Run Code Online (Sandbox Code Playgroud)
...否则,Date如果您需要更多灵活性,则必须比较对象.
| 归档时间: |
|
| 查看次数: |
7487 次 |
| 最近记录: |