数组格式固定,数组内部是对象,按对象元素排序,这里按照年龄大小排序
var par = [
{ age: 21, name: ‘小丽’ },
{ age: 18, name: ‘小王’ },
{ age: 22, name: ‘小鹿’ },
{ age: 23, name: ‘小狗’ },
{ age: 17, name: ‘小雅’ },
{ age: 22, name: ‘小方’ },
{ age: 16, name: ‘小红’ },
]
//方法1
function p1(par) {
let arr = […par];//如果不想改变原数组
for (var i = 0; i < arr.length - 1; i++) {
let t = {};
for (var j = i + 1; j < arr.length; j++) {
if (arr[i].age > arr[j].age) {
t = arr[i];
arr[i] = arr[j];
arr[j] = t;
}
}
}
return arr;
}
console.log(‘双层for循环排序’,p1(par));
//方法2
function p2(par) {
arr = […par];
return arr.sort(function(a, b) {
return a.age > b.age ? 1 : -1;
});
}
console.log(‘sort排序’, p2(par));