2013-03-09 270 views
1
[ 
    { 
     time: '5' 
    }, 
    { 
     time: '2' 
    }, 
    { 
     time: '3' 
    } 
] 

比方说,我有一个对象数组。我想按时间排序,按升序排序。我怎么能在JavaScript中做到这一点?如何根据对象的值对对象数组进行排序?

是否有通用功能?

var sorted_array = sortByKey(my_array, 'time', 'asc'); 

回答

0

您可以使用内置的array.sort(somefunction)

var data = [ 
    { 
     time: '5' 
    }, 
    { 
     time: '2' 
    }, 
    { 
     time: '3' 
    } 
]; 

data.sort(function(a,b){ 
    return a.time - b.time; 
}); 
0
var myArr = [ 
    { 
     time: '5' 
    }, 
    { 
     time: '2' 
    }, 
    { 
     time: '3' 
    } 
]; 

myArr.sort(function (a, b) { 
    return parseInt(a.time, 10) - parseInt(b.time, 10); 
}); 
1

你可以做这样的事情:

my_array.sort(function(a,b) {return a.time - b.time}); 
1

喜欢的东西:

jsArray = [ 
{ 
    time: '5' 
}, 
{ 
    time: '2' 
}, 
{ 
    time: '3' 
} 
] 

    jsArray.sort(function(tm1, tm2){ 
     return tm2.time - tm1.time; 
    }); 
相关问题