Присоединяйтесь к новому бесплатному курсу по Angular: "Список пользователей"
Курс проходит в мессенджере (Telegram, Viber). В конце курса - сессия живого разбора кода. Регистрация по ссылке.

sort()

sort()

Сортировка массива:

var colors = ["Yellow", "Pink", "Blue", "Red", "Green", "Brown"];
 
colors.sort();

// Blue, Green, Pink, Red, Yellow

Демо

Определение и использование

Метод sort() сортирует элементы массива.
Порядок сортировки может быть буквенный, числовой, в порядке возрастания, или в порядке убывания.
По умолчанию метод sort() сортирует значения в виде строк в алфавитном порядке возрастания.
Это хорошо работает для строк ( «Blue» предшествует «Green»). Однако, если число сортируются как строки, «25» больше, чем «100», потому что «2» больше, чем «1».
Из-за этого, метод sort() будет производить неправильный результат при сортировке чисел.
Можно исправить это, применяя функцию compareFunction для определения порядка элементов.
Примечание: Этот метод изменяет исходный массив.

Поддержка браузеров

Синтаксис

array.sort(compareFunction)

Значения параметров

Параметр Описание
compareFunction

 

 

 

 

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

function(a, b){return a-b}

Когда метод sort () сравнивает два значения, он отправляет значения в compareFunction и сортирует значения в соответствии с возвращаемым (отрицательным, нулевым, положительным) значением.

Технические подробности

Возвращаемое значение: Массив с отсортированными  элементами
Версия JavaScript: ECMAScript 1

Дополнительные примеры

Сортировка чисел в массиве в порядке возрастания:

var items = [30, 100, 1, 5, 27, 10];
 
items.sort(function(a, b){return a-b});

// 1,5,10,27,30,100

Сортировка чисел в массиве в порядке убывания:

var items = [30, 100, 1, 5, 27, 10];
 
items.sort(function(a, b){return b-a});

// 100,30,27,10,5,1