通过其值过滤数组中对象的最快方法

时间:2014-12-22 11:21:54

标签: javascript angularjs object filter

这是我的对象数组:

var arr = [
    {name:"Mike", age:17},
    {name:"John", age:21},
    {name:"Sam", age:32},
    {name:"Mark", age:23}
]

例如,我在这个数组中拥有成千上万的对象。

根据年龄(最大到最小)过滤它的最快方法是什么?

这是我的预期输出:

var arr = [
    {name:"Sam", age:32},
    {name:"Mark", age:23}
    {name:"John", age:21},
    {name:"Mike", age:17},      
]

1 个答案:

答案 0 :(得分:1)

我认为你需要的是排序。所以你可以尝试这样的事情:

// for sorting them from the greatest to the lower
function compare(a,b) {
   return b.age-a.age;
}

arr.sort(compare);

如果要对它们进行从较低到最高的排序,则必须使用以下compare

function compare(a,b) {
   return a.age-b.age;
}

请在这里查看JSFiddle