Javascript按dd/mm/yyyy属性排序对象
我的大部分问题都在这个帖子中得到了回答: 但是我想知道如果日期在一个对象中,怎么做,即Javascript按dd/mm/yyyy属性排序对象,javascript,arrays,sorting,Javascript,Arrays,Sorting,我的大部分问题都在这个帖子中得到了回答: 但是我想知道如果日期在一个对象中,怎么做,即 var info = [ { name : 'a', date : '01/05/2017' }, { name : 'b', date : '23/12/2013' }, { name : 'c', date : '22/01/2015' } ] 无骰子: (info.date).sort(function(a, b){
var info = [
{
name : 'a',
date : '01/05/2017'
},
{
name : 'b',
date : '23/12/2013'
},
{
name : 'c',
date : '22/01/2015'
}
]
无骰子:
(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);
});
(信息日期).排序(函数a,b){
var aa=a.split('/').reverse().join(),
bb=b.split(“/”).reverse().join();
返回aabb-1:0);
});
谢谢 因为info是一个数组,所以对info和info.date应用sort方法,并在comparator函数中比较数组中每个对象的日期值。大概是这样的:
var信息=[
{
名称:‘a’,
日期:2017年5月1日
},
{
名称:‘b’,
日期:2013年12月23日
},
{
名称:‘c’,
日期:2015年1月22日
}
]
信息排序(功能(a、b){
var aa=a.date.split('/').reverse().join(),
bb=b.date.split(“/”).reverse().join();
返回aabb-1:0);
});
控制台日志(信息)代码>aabb?1:0)
可以简化为aa-bb
@kukkuz,这将不起作用,aa和bb实际上是逗号分隔的字符串。如果您可以添加库,您可以尝试使用矩js