问题
对一个数组(多个对象)进行两级排序,例如[{name: 'zhong', age: 18}, {name: 'xiaoli', age: 15}, {name: 'hong', age: 50}],先对name进行排序,再对age进行排序。
答案
function sortArrObject(arr) {
return arr.sort(function(x, y) {
if (x.name > y.name) {
return 1;
} else if (x.age > y.age) {
return 1;
}
});
}
var arr = [{name: 'zhong', age: 18}, {name: 'zhong', age: 15}, {name: 'xiaoli', age: 15}, {name: 'hong', age: 50}];
console.log(sortArrObject(arr));
//[ { name: 'hong', age: 50 },
//{ name: 'xiaoli', age: 15 },
// { name: 'zhong', age: 15 },
// { name: 'zhong', age: 18 } ]