1. 数组为数字或字符串
sort() 默认排序是 由低到高
let a=[1,4,6,3]
a.sort()
console.log(a); // [1,3,4,6]
a.sort((x,y)=>{
return y-x
})
console.log(a); // [6,4,3,1]
sort() 等同于
sort(x,y)=>{ return x-y } 增序
数组中为字符串时,是根据 ASCII码值排序
2. 数组为对象
根据对象中的某个属性 排序
let list=[{
name:"zhangsan",
age:20
},{
name:"lisi",
age:18
}]
// 定义sort内 的回调函数
// a,b 指 数组中的前后两个对象
// item 是 排序的属性
const sorta=(item)=>{
return function(a,b){
const v1=a[item]
const v2=b[item]
return v2-v1
}
}
// 根据 age 排序
this.list.sort(sorta('age'))