var arr=[{id:1,name:'xx',age:18},{id:2,name:'xx',age:28},{id:3,name:'xx',age:32},{id:4,name:'xx',age:12},{id:5,name:'xx',age:23}]
function compare(key){
        return function (o1,o2){
            var a=o1[key],
                b=o2[key];
            return a-b
        }
    }
arr.sort(compare('age'))   //compare传入数组内对象元素的key,再将函数传入数组的sort方法,这样就会根据这个key的值对数组进行排序
console.log(arr)
//打印结果:  (根据了age的大小进行了排序) 
- [Object, Object, Object, Object, Object]
 
- 0:Object
 
- age:12
 
- id:4
 
- name:"xx"
 
- __proto__:Object
 
- 1:Object
 
- age:18
 
- id:1
 
- name:"xx"
 
- __proto__:Object
 
- 2:Object
 
- age:23
 
- id:5
 
- name:"xx"
 
- __proto__:Object
 
- 3:Object
 
- age:28
 
- id:2
 
- name:"xx"
 
- __proto__:Object
 
- 4:Object
 
- age:32
 
- id:3
 
- name:"xx"
 
- __proto__:Object
 
- length:5