2013-03-02 153 views
2

的阵列我有一个数组,看起来像这样:排序JavaScript对象

data = 
[ 
    {name: "Monday", amount: 67, colour: "red"}, 

    {name: "Tuesday", amount: 23, colour: "blue"}, 

    {name: "Wednesday", amount: 50, colour: "yellow"}, 

    {name: "Thursday", amount: 70, colour: "green"}, 

    {name: "Friday", amount: 20, colour: "orange"}, 

    {name: "Saturday", amount: 90, colour: "black"}, 

    {name: "Sunday", amount: 10, colour: "brown"} 
] 

我想由“量”的值降序排序的数组,所以一旦排序,该阵列是这样的:

data = 
[ 
    {name: "Saturday", amount: 90, colour: "black"}, 

    {name: "Thursday", amount: 70, colour: "green"}, 

    {name: "Monday", amount: 67, colour: "red"}, 

    {name: "Wednesday", amount: 50, colour: "yellow"}, 

    {name: "Tuesday", amount: 23, colour: "blue"}, 

    {name: "Friday", amount: 20, colour: "orange"}, 

    {name: "Sunday", amount: 10, colour: "brown"} 
] 

我见过类似这样的计算器上的各个岗位,但我觉得很难解释这些问题,一个像我已命名的索引(名称,数量,颜色),而不是仅仅[0], [1], [2]等。

+1

改为搜索“排序对象数组”。没有“具有命名指示符的数组”,并且您没有“多维数组”。 – Bergi 2013-03-02 16:07:36

+0

可能的重复[如何排序的JavaScript对象的数组?](http://stackoverflow.com/questions/979256/how-to-sort-an-array-of-javascript-objects) – Bergi 2013-03-02 16:09:08

+0

好的。我的错误,谢谢。 – loxyboi 2013-03-02 16:15:02

回答

3

使用Array.sort

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