JS 数组排序 ( 4种方法 )
JavaScript 提供了几种方法来对数组进行排序。以下是四种常用的排序方法:
- 使用
sort()
方法 - 使用
reverse()
方法 - 使用
localeCompare
方法 - 使用
Array.prototype.sort()
的自定义比较函数
1. 使用 sort()
方法
sort()
方法会根据字符串Unicode码点默认按字母顺序排序数组。
let arr = ['banana', 'apple', 'mango'];
arr.sort();
console.log(arr); // ['apple', 'banana', 'mango']
2. 使用 reverse()
方法
reverse()
方法将数组中的元素反转排序。
let arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // [5, 4, 3, 2, 1]
3. 使用 localeCompare
方法
localeCompare()
方法是String对象的一个方法,可以用来比较两个字符串。
let arr = ['apple', 'banana', 'mango'];
arr.sort((a, b) => a.localeCompare(b));
console.log(arr); // ['apple', 'banana', 'mango']
4. 使用自定义比较函数
你可以通过自定义比较函数来实现自定义排序规则。
let arr = [4, 3, 2, 10, 1];
arr.sort((a, b) => a - b);
console.log(arr); // [1, 2, 3, 4, 10]
在自定义比较函数中,如果返回负数,则 a
会被排序在 b
之前;如果返回零,则 a
和 b
的相对位置不变;如果返回正数,则 a
会被排序在 b
之后。
评论已关闭