JS
中Array
提供了sort()
方法用于辅助我们实现数组的排序功能,其使用语法格式如下所示:
语法:
arr.sort([compareFunction])
参数:
compareFunction [可选]
用于数组排序规则的比较函数。如果不含有该参数,数组元素按照转换字符串的各个字符的Unicode编码顺序进行排序。
compareFunction 参数:
firstElement 用于比较的第一个元素
secondElement 用于比较的第二个元素
返回值:
排序后的数组,返回的是当前数组。
使用
1、sort()
默认可以实现将数组中的单项转入Unicode
编码进行排序,如下:
let arr = ['cai',01,2,3,-1]
arr.sort()
console.log(arr)
// [-1, 1, 2, 3, 'cai']
2、自定义实现排序,使用compareFunction函数实现自定义排序,函数返回值:
- 负数:顺序不变
- 零:顺序不变
- 大于零:交换位置
代码示例如下:
let arr = [311,43,54,4,40,26,31,33];
arr.sort(() => -1);
console.log(arr); // [33, 31, 26, 40, 4, 54, 43, 311]