Далее на странице...
Метод sort в JavaScript сортирует элементы массива.
С его помощью можно сортировать массивы, содержащие как строковые элементы (текст или его фрагменты), так и числовые.
Метод sort – Сортировка строк
С сортировкой строковых (текстовых) элементов массивов все просто.
Возьмём для примера массив «Буквы» (содержит буквы русского алфавита) и расположим его элементы в произвольном порядке.
Воспользуемся методом sort для сортировки элементов массива из букв.
const letters = ['с', 'а', 'к', 'в', 'о', 'я', 'ж'];
console.log(letters.sort());
Результат
[ 'а', 'в', 'ж', 'к', 'о', 'с', 'я' ]
Из примера видно, как метод sort сортирует текстовые элементы массива: он их располагает в алфавитном порядке.
Итак, с помощью метода sort в JavaScript удобно сортировать массивы, содержащие строковые элементы.
Метод sort – Сортировка чисел
Посмотрим, как работает метод sort и как происходит сортировка массивов, содержащих числовые значения.
Метод sort сравнивает элементы массива по первому знаку. Для примера будем работать с массивом «Числа».
<script type="text/javascript">
var number = [1390, 45, 870, 256, 7, 35600, 17];
document.write(number + "<p>");
document.write(number.sort()); // Сортировка числовых элементов массива
</script>
1390, 45, 870, 256, 7, 35600, 17
Как видно из примера, метод sort сортирует числовые элементы массива не по возрастанию и не по убыванию, как можно было бы ошибочно ожидать, а исключительно ориентируясь на первые знаки элементов, то есть на первые цифры чисел.
Логику работы метода sort можно объяснить подробнее, если рассмотреть числа из примера и проанализировать результат. Почему, например, число 17 расположено после числа 1390?
Здесь нужно обратить внимание на первые и вторые цифры этих чисел. 1 = 1, но 3 меньше 7, поэтому метод sort ставит на первое место 1390, а потом 17. Проанализируйте далее вывод элементов (чисел) самостоятельно.
Мы рассмотрели, как используется метод sort для сортировки массивов в JavaScript.
Метод sort – Сортировка строк - Верхний регистр
В первом примере (см. выше: метод sort - сортировка строк) массив состоял из букв нижнего регистра. Переведем две последние буквы в верхний регистр.
const letters2 = [' с', ' а', ' к', ' в', ' о', ' Я', ' Ж'];
console.log(letters2.sort());
Результат
[ ' Ж', ' Я', ' а', ' в', ' к', ' о', ' с' ]
Из примера видно, что метод sort в JavaScript сортирует строковые элементы массива, начиная с элементов, расположенных в верхнем регистре.