cannibal_corpse
@cannibal_corpse
Верстальщик руками

Метод Array.sort() — что такое a и b?

const unsorted = [5, 4, 2, 10];

unsorted.sort((a, b) => {
    console.log('a:', a);
    console.log('b:', b);
  });

// a: 4,
// b: 5


Добрый день!
Подскажите, почему при сортировке b принимает второе значение, а a первое?
[5, 4]; Где a = 4, b = 5?
  • Вопрос задан
  • 190 просмотров
Решения вопроса 2
По тому что это коллбэк для сравнения пар элементов.
Не нужно завязываться на порядок их появления.
Нужно вернуть:
  • -1 если a<b
  • +1 если a>b
  • 0 если a==b
Ответ написан
Комментировать
NinaFFF
@NinaFFF
начинающий программист
Я задавала похожий вопрос посмотрите -
ссылка, причем в другом движке( например FireFox) первый элемент будет наоборот. Просто не зацикливайтесь какой из элементов появляется раньше, он сравнивает два элемента и перемещает их по массиву, если все же хотите понимать точно, то просто почитайте спецификацию конкретного движка
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы