Сортировка чисел методом sort

97
23 ноября 2021, 05:00

var n = [4,6,19,34,32]; 
console.log(n.sort()); //(5) [19, 32, 34, 4, 6]

Answer 1

В документации к методу sort сказано

compareFunction Необязательный параметр. Указывает функцию, определяющую порядок сортировки. Если опущен, массив сортируется в соответствии со значениями кодовых точек каждого символа Unicode, полученных путём преобразования каждого элемента в строку.

То есть, ваши числа превращаются в строку и сравниваются, как строки, а для строк 111 < 9, так как сравнивается посимвольно.

Что бы сортировать числа, нужно делать так:

var n = [4,6,19,34,32];
console.log(n.sort((a, b) => a - b)); // [ 4, 6, 19, 32, 34 ]
READ ALSO
Обратится к полю переменной

Обратится к полю переменной

Есть переменная acc, типа object, у нее следующее содержимое:

96
Правильно ли я возвращаю значение?

Правильно ли я возвращаю значение?

Имеется переменная типа string, в нее приходит данные от функции с возвращаемым значением Promise<any>

75
Функция карусели JS?

Функция карусели JS?

Есть три слайдшоу - каждый со своей продуктовой линейкой

71
Зачем нужен index.js для компонентов?

Зачем нужен index.js для компонентов?

В процессе изучения React наткнулся на множество примеров в которых присутствует следующая структура:

266