带有下划线sortBy的对象sorting数组

我有这个数组。 如何使用下划线“_.sortBy”按照开始date对其进行sorting?

[ { id: 'oljw832021kjnb389xzll323jk', start: { dateTime: '2013-09-26T13:30:00-07:00' }, end: { dateTime: '2013-09-26T14:30:00-07:00' }, }, { id: 'ed7l5tmckdp0lm90nvr4is3d4c', start: { dateTime: '2013-09-26T15:30:00-07:00' }, end: { dateTime: '2013-09-26T16:30:00-07:00' }, }, { id: 'etmasdsackdp0kjl0nvrkopioqw', start: { dateTime: '2013-09-26T18:00:00-07:00' }, end: { dateTime: '2013-09-26T19:00:00-07:00' }, } ] 

使用迭代器函数,而不是一个属性的单个string:

 _.sortBy(arr, function(o) { return o.start.dateTime; }) 

我这样做了:

 var sorted = _(list).sortBy( function (item) { return [new Date(item.effectiveDate).getTime(), item.batchId]; }), "batchId"); 

如果你想下降,那么它是一样的事情,但* -1

 var sorted = _(list).sortBy( function (item) { return [new Date(item.effectiveDate).getTime()*-1, item.batchId]; }), "batchId"); 

在这个例子中,我按两个字段sorting,可以忘记item.batchId。

希望这有助于某人。