2015-11-06 31 views
0

我有不同时代的数组,我需要从低到高,但是从驱动程序直接订购,我处理如下:订货小时

var arrayList =[{hora: '8:30'},{hora: '14:30'},{hora:'22:30'},{hora:'07:00'}] 

    $scope.array =$filter('orderBy')(arrayList, true); 

结果不如预期的那样,我错了

+0

这应该工作。 'var sortedArr = arrayList.sort(function(a,b){return parseInt(a.hora.replace(':'),10) - parseInt(b.hora.replace(':',''),10) });' – Tushar

+0

你这么说? http://plnkr.co/edit/y7imBQ7wIdkWbT97savb?p=preview –

+0

检查http://plnkr.co/edit/ne9AdMNuKSXIc2ZVQaMJ?p=preview – Tushar

回答

0

我不熟悉角度,但通常,排序时间变量的问题是,它们存储为字符串,并没有完全引用为时间变量。

在这种情况下,我通常在几小时和几分钟内分割它们,将小时数乘以60并添加分钟数,然后对得到的整数值进行排序。

+0

好的,你可以添加代码 – Tushar

+0

这应该是一个评论,而不是一个答案。 – RobG