如何通过两个不同的值对对象数组进行排序

时间:2014-11-12 11:40:29

标签: javascript arrays function sorting

我有一个对象数组

var arr= [  {vara:4, varb:0, varc:3}    {vara:1, varb:2, varc:0}    {vara:3, varb:1, varc:5} ..... ]

首先,我想用vara对数组进行排序,所以我使用

arr.sort(function(a, b){return a.vara-b.vara});

如果排序的数组在vara参数中具有相等的值,我想通过varb进行第二次排序,它只会使用具有相等vara值的对象,而不是所有数组。

这怎么可能?

1 个答案:

答案 0 :(得分:2)

如下:

arr.sort(function(a, b){
    if (a.vara === b.vara) {
        return a.varb - b.varb
    }
    return a.vara-b.vara;
});