这个功能还是很常用的,记录下来,供需要的小伙伴使用:

从小到大排序(升序)

function compareTop(arr, key){
return arr.sort(function(a,b){
var x = a[key]
var y = b[key]
return ((x<y)?-1:((x>y)?1:0))
})
}
var obj = [{a:1}, {a: 5}, {a:8}, {a:3}]
console.log(compareTop(obj, 'a'))
// [{a:1}, {a:3}, {a: 5}, {a:8}]

从大到小排序(降序)

其实只是把升序的x,y换了个位置而已。

function compareDown(arr, key){
return arr.sort(function(a,b){
var y = a[key]
var x = b[key]
return ((x<y)?-1:((x>y)?1:0))
})
}
var obj = [{a:1}, {a: 5}, {a:8}, {a:3}]
console.log(compareDown(obj, 'a'))
// [{a:8}, {a:5}, {a: 3}, {a:1}]

实现完毕,简单吧!