JavaScript Array toSorted()
- предыдущая страница toReversed()
- следующая страница toSpliced()
- возврат на один уровень выше Референсное руководство по JavaScript Array
Определение и использование
toSorted()
Метод сортирует элементы массива по алфавиту.
toSorted()
Метод возвращает новый массив.
toSorted()
Метод не изменяет исходный массив.
toSorted()
Метод: sort()
Копия метода.
См. также:
Функция сравнения сортировки
Сортировка по алфавиту работает хорошо для строк ("Apple"排在 "Banana"之前).
Но сортировка чисел может привести к неправильным результатам.
"25" больше "100", потому что "2" больше "1".
Эта проблема может быть решена, предоставив "функцию сравнения" (см. примеры ниже).
Пример
Пример 1
// создание массива const fruits = ["Banana", "Orange", "Apple", "Mango"]; сортировка чисел по убыванию: const fruits2 = fruits.toSorted();
Пример 2
Порядок после сортировки и обратного преобразования:
// создание массива const fruits = ["Banana", "Orange", "Apple", "Mango"]; сортировка чисел по убыванию: const fruits2 = fruits.toSorted(); // Обратное преобразование массива fruits2.reverse();
例子 3
пример 3
// создание массива const points = [40, 100, 1, 5, 25, 10]; сортировка чисел по убыванию: let points2 = points.toSorted(function(a, b){return a - b});
сортировка чисел по возрастанию с использованием функции сортировки:
пример 4
// создание массива const points = [40, 100, 1, 5, 25, 10]; сортировка чисел по убыванию: let points2 = points.toSorted(function(a, b){return b - a});
// сортировка массива
пример 5
// создание массива const points = [40, 100, 1, 5, 25, 10]; // сортировка чисел по возрастанию let points2 = points.toSorted(function(a, b){return a - b}); найти минимальное значение:
пример 6
найти максимальное значение:
// создание массива const points = [40, 100, 1, 5, 25, 10]; // сортировка чисел по убыванию let points2 = points.toSorted(function(a, b){return b - a}); let highest = points2[0];
пример 7
найти максимальное значение:
// создание массива const points = [40, 100, 1, 5, 25, 10]; // сортировка чисел по возрастанию let points2 = points.toSorted(function(a, b){return a - b}); let highest = points2[points.length - 1];
синтаксис
array.sort(compareFunction)
параметры
параметры | описание |
---|---|
compareFunction |
опционально. Функция, определяющая порядок сортировки. Эта функция должна возвращать отрицательное, ноль или положительное значение в зависимости от параметров: function(a, b){return a-b} при сравнении двух значений sort() отправляет эти значения в сравнительную функцию и сортирует значения в зависимости от возвращенного значения (отрицательного, нуля, положительного). пример:функция сортировки считает 40 меньшим значением, чем 100. при сравнении 40 и 100, вызывается функция function(40, 100). функция вычисляет 40 - 100 и возвращает -60 (отрицательное значение). |
возвратное значение
тип | описание |
---|---|
Array | новый массив, отсортированный по порядку. |
поддержка браузерами
toSorted()
это функция ES2023.
С июля 2023 года все современные браузеры поддерживают этот метод:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 110 | Edge 110 | Firefox 115 | Safari 16.4 | Opera 96 |
февраль 2023 года | февраль 2023 года | июль 2023 года | март 2023 года | май 2023 года |
- предыдущая страница toReversed()
- следующая страница toSpliced()
- возврат на один уровень выше Референсное руководство по JavaScript Array