乐趣区

js的数组排序sort

1. 默认 – 按照 ASCII 码进行升序排序

arr.sort()

2. 自定义排序方式 –a 和 b 是相邻的两个数,a 在前,b 在后. 如果返回正数,则 a,b 交换位置,负数和零则不变,所以也适用于 json

arr.sort((a,b)=>{})
//1. 升序 
if(a>b){return 1}else{return -1}
//2. 降序
if(a<b){return 1}else{return -1}
// 如果 a,b 是数字则可简写 
return a-b  // 升序
return b-a  // 降序

3.json
按照 name 升序

arr=[{id:1,name:'a'},
{id:2,name:'b'},
{id:3,name:'c'},
{id:4,name:'d'}
]
arr.sort((a,b)=>{if(a.name>b.name){return 1}else{return -1}
})

按照 name 降序

arr=[{id:1,name:'a'},
{id:2,name:'b'},
{id:3,name:'c'},
{id:4,name:'d'}
]
arr.sort((a,b)=>{if(a.name<b.name){return 1}else{return -1}
})
退出移动版