Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник JavaScript

Array.prototype.toSorted

Возвращает отсортированную копию массива, не меняя исходный.

Доступно с: ES2023

Синтаксис

array.toSorted(compareFn)

Параметры

ПараметрТипОписание
compareFnFunctionНеобязательный. Функция сравнения двух элементов: возвращает отрицательное число, ноль или положительное.

Возвращаемое значение

ArrayНовый отсортированный массив.

Примеры

Исходный массив остаётся прежним:

const prices = [30, 5, 120];
const sorted = prices.toSorted((a, b) => a - b);
 
console.log(sorted.join(', '));
console.log(prices.join(', '));

Результат:

5, 30, 120
30, 5, 120

Сортировка объектов по имени:

const users = [{ name: 'Oleg' }, { name: 'Anna' }];
 
console.log(users.toSorted((a, b) => a.name.localeCompare(b.name)).map((u) => u.name).join(', '));

Результат:

Anna, Oleg

Примечания

Без функции сравнения элементы сравниваются как строки, поэтому [10, 9].toSorted() даст [10, 9]. Для чисел всегда передавайте (a, b) => a - b.

См. также

Вопросы и ответы по теме

В учебнике

  • Сортировка массивов — Как отсортировать массив в JavaScript: sort, функция сравнения, сортировка чисел, строк и объектов, reverse и toSorted.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.