Ste*_*phD 2 javascript arrays sorting
我的大部分问题都在这个线程中得到了回答:How Sort Array Date JavaScript dd/mm/yyyy?
但是想知道如果日期在一个对象中怎么办,即
var info = [
{
name : 'a',
date : '01/05/2017'
},
{
name : 'b',
date : '23/12/2013'
},
{
name : 'c',
date : '22/01/2015'
}
]
Run Code Online (Sandbox Code Playgroud)
没有骰子:
(info.date).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)
谢谢!
由于 info 是一个数组,将 sort 方法应用于 info 和 info.date 并在比较器函数内部比较数组中每个对象的日期值。像这样:
var info = [
{
name : 'a',
date : '01/05/2017'
},
{
name : 'b',
date : '23/12/2013'
},
{
name : 'c',
date : '22/01/2015'
}
]
info.sort(function(a, b){
var aa = a.date.split('/').reverse().join(),
bb = b.date.split('/').reverse().join();
return aa < bb ? -1 : (aa > bb ? 1 : 0);
});
console.log(info);Run Code Online (Sandbox Code Playgroud)