Javascript Async.js排序方式的升序排序与降序排序

Javascript Async.js排序方式的升序排序与降序排序,javascript,node.js,Javascript,Node.js,我正在尝试使用Async.sortBy按对象的日期属性对对象数组进行排序,从最新到最旧。有点Google建议我通过在回调中传递obj.date*-1而不是obj.date来反转排序顺序,但这并没有预期的效果。很明显,因为这样做的结果就是NaN 以今天的日期为例,我的日期为2012-07-12 很抱歉,由于简短和缺少代码示例,我现在正在路上使用我的iPad 我想我可以反转排序的输出数组,但这不是一个特别好的解决方案 [{title: "title", date: "2012-07-12"}, {t

我正在尝试使用Async.sortBy按对象的日期属性对对象数组进行排序,从最新到最旧。有点Google建议我通过在回调中传递obj.date*-1而不是obj.date来反转排序顺序,但这并没有预期的效果。很明显,因为这样做的结果就是NaN

以今天的日期为例,我的日期为2012-07-12

很抱歉,由于简短和缺少代码示例,我现在正在路上使用我的iPad

我想我可以反转排序的输出数组,但这不是一个特别好的解决方案

[{title: "title", date: "2012-07-12"}, {title: "title2", date: "2011-07-12"}]

这个解决方案怎么样

async.sortBy([{title: "title", date: "2012-07-12"}, {title: "title2", date: "2011-07-12"}], function(myObject, callback){
    return parseInt( myObject.date.split( '-' ).join(''), 10 ) * -1;
}, function(err, results){ ... });

在中,将日期字符串转换为可排序的整数,并通过与-1相乘将其反转。

根据您的问题,我知道您的日期字段是字符串格式的。是这样吗?是的。这是一个JavaScript对象数组,每个对象都有键“date”,其值为字符串格式,yyyy mm dd性能测试为array.reverse vs parseInt。array.reverse的速度要快得多,并且具有缩短的优点。