sort深入理解

153 阅读1分钟

sort使用

  前言sort的默认排序规则是按照ASCII码表进行排序,当个位数和十位数进行比较
时就会出现问题,这是可以用在sort传入一个函数来解决需求

升序排列

var arr = [3, 15, 8, 29, 102, 22]
/* sort传入function(a,b)
    返回正值 b在前
    返回负值 a在前 */
arr.sort(function (a,b) {
     if (a>b) {
        return 1
     } else if(a<b) {
         return -1
     } else {
         return 0
     }
})

降序排列

var arr = [3, 15, 8, 29, 102, 22]
arr.sort(function (a,b) {
     if (a>b) {
        return -1
     } else if(a<b) {
         return 1
     } else {
         return 0
     }
})

数组的随机排序

var arr = [1,2,3,4,5,6]
arr.sort(function (a,b) {
    return Math.random() - 0.5
})
console.log(arr);