JavaScript Array toSorted()
- Trang trước toReversed()
- Trang tiếp theo toSpliced()
- Quay lại lớp trên Sách tham khảo JavaScript Array
定义和用法
toSorted()
方法按字母顺序对数组元素进行排序。
toSorted()
方法返回新数组。
toSorted()
方法不会覆盖原始数组。
toSorted()
方法是 sort()
方法的复制版本。
另请参阅:
排序比较函数
按字母顺序排序对字符串效果很好("Apple" 排在 "Banana" 之前)。
但是,对数字排序可能会产生不正确的结果。
"25" 比 "100" 大,因为 "2" 比 "1" 大。
可以通过提供“比较函数”来解决此问题(见下面的例子)。
实例
例子 1
// Tạo một mảng const fruits = ["Banana", "Orange", "Apple", "Mango"]; // Sắp xếp mảng const fruits2 = fruits.toSorted();
例子 2
排序后反转顺序:
// Tạo một mảng const fruits = ["Banana", "Orange", "Apple", "Mango"]; // Sắp xếp mảng const fruits2 = fruits.toSorted(); // 反转数组 fruits2.reverse();
Ví dụ 3
Sắp xếp theo thứ tự tăng dần sử dụng hàm sắp xếp:
// Tạo một mảng const points = [40, 100, 1, 5, 25, 10]; // Sắp xếp mảng let points2 = points.toSorted(function(a, b){return a - b});
Ví dụ 4
Sắp xếp theo thứ tự giảm dần:
// Tạo một mảng const points = [40, 100, 1, 5, 25, 10]; // Sắp xếp mảng let points2 = points.toSorted(function(a, b){return b - a});
Ví dụ 5
Tìm giá trị nhỏ nhất:
// Tạo một mảng const points = [40, 100, 1, 5, 25, 10]; // Sắp xếp theo thứ tự tăng dần let points2 = points.toSorted(function(a, b){return a - b}); let lowest = points2[0];
Ví dụ 6
Tìm giá trị lớn nhất:
// Tạo một mảng const points = [40, 100, 1, 5, 25, 10]; // Sắp xếp theo thứ tự giảm dần let points2 = points.toSorted(function(a, b){return b - a}); let highest = points2[0];
Ví dụ 7
Tìm giá trị lớn nhất:
// Tạo một mảng const points = [40, 100, 1, 5, 25, 10]; // Sắp xếp theo thứ tự tăng dần let points2 = points.toSorted(function(a, b){return a - b}); let highest = points2[points.length - 1];
Cú pháp
array.sort(compareFunction)
Tham số
Tham số | Mô tả |
---|---|
compareFunction |
Tùy chọn. Định nghĩa hàm để xác định thứ tự sắp xếp. Hàm này nên trả về giá trị âm, bằng hoặc dương dựa trên tham số: function(a, b){return a-b} Khi hàm sort() so sánh hai giá trị, nó sẽ gửi các giá trị này đến hàm so sánh và sắp xếp giá trị dựa trên giá trị trả về (âm, bằng, dương). Ví dụ:Hàm sắp xếp sẽ coi 40 là giá trị nhỏ hơn 100. Khi so sánh 40 và 100, hàm sort() gọi hàm function(40, 100). Tính toán hàm 40 - 100 và trả về -60 (giá trị âm). |
Giá trị trả về
Loại | Mô tả |
---|---|
Array | Mảng mới sau khi sắp xếp. |
Hỗ trợ trình duyệt
toSorted()
Là tính năng của ES2023.
Từ tháng 7 năm 2023 trở đi, tất cả các trình duyệt hiện đại đều hỗ trợ phương pháp này:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 110 | Edge 110 | Firefox 115 | Safari 16.4 | Opera 96 |
Tháng 2 năm 2023 | Tháng 2 năm 2023 | Tháng 7 năm 2023 | Tháng 3 năm 2023 | Tháng 5 năm 2023 |
- Trang trước toReversed()
- Trang tiếp theo toSpliced()
- Quay lại lớp trên Sách tham khảo JavaScript Array