- 业务中经常遇到根据某个参数进行排序对比
// sort排序
let data = [1,2,4,3]
data = data.sort((a,b)=> b-a)
console.log(data,'data') // [4, 3, 2, 1]
- 这个是最简单的数组排序了
- 但是往往在业务中,遇到的排序情况稍微复杂一些
let listInfo = [{name: '张三',age: 13},{name:'李四', age: 15},{name: '王三', age: 12}]
listInfo = listInfo.sort((a,b)=>b.age - a.age)
console.log(listInfo) // [{name: '李四', age: 15}, {name: '张三', age: 13}, {name: '王三', age: 12}]
- 之前的排序,都是数字排序,但是假如字符串呢
- 可以优先考虑
JavaScript localeCompare()
方法
let dataOne = [{name: '张三', age: '13'},{name: '李四', age: '15'},{name: '王五', age: '12'}]
dataOne = dataOne.sort((a,b)=> a.age.localeCompare(b.age))
console.log(dataOne) // [{name: '王五', age: '12'}, {name: '张三', age: '13'}, {name: '李四', age: '15'}]