Что выполняется в функции, и для чего. Почему значения а и б минусуются
Почему значения а и б минусуются?
const arr = [1, 14, 4, 30, 54];
const compareNum = (a, b) => {
return a - b;
}
let sorted = arr.sort(compareNum);
console.log(sorted);
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Начнём с того, что колбэк функция (если таковую указывать) в методе sort, определяет порядок сортировки. Чуть подробнее о методе в ссылке выше или https://ru.stackoverflow.com/a/1231786/191482.
Она может возвращать значения больше нуля, меньше нуля или ноль.
Если рассматривать текущий случай:
compareNum (a, b) => a - b;
Получаем:
- Если
a > b, тоa - bвернет положительное число - Если
a < b, тоa - bвернёт отрицательное число - Если равны, то
a - bвернёт 0.
Что как раз и соответствует требованиям, которые описаны выше
P.S. a - b - сортировка по возрастанию, b - a - сортировка по убыванию