如何按对象的值对对象数组进行排序?

时间:2013-03-09 05:37:55

标签: javascript arrays sorting

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

假设我有一系列对象。我希望按时间排序,升序。我怎么能用javascript做到这一点?

是否有通用功能?

实施例

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

4 个答案:

答案 0 :(得分:1)

您可以这样做:

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

答案 1 :(得分:1)

类似的东西:

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

    jsArray.sort( function( tm1, tm2 ){
      return tm2.time - tm1.time;
    });

答案 2 :(得分:0)

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

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

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

答案 3 :(得分:0)

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

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