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?
  • Вопрос задан
  • 184 просмотра
Решения вопроса 2
vabka
@vabka
Токсичный шарпист
По тому что это коллбэк для сравнения пар элементов.
Не нужно завязываться на порядок их появления.
Нужно вернуть:
  • -1 если a<b
  • +1 если a>b
  • 0 если a==b
Ответ написан
Комментировать
NinaFFF
@NinaFFF
начинающий программист
Я задавала похожий вопрос посмотрите -
ссылка, причем в другом движке( например FireFox) первый элемент будет наоборот. Просто не зацикливайтесь какой из элементов появляется раньше, он сравнивает два элемента и перемещает их по массиву, если все же хотите понимать точно, то просто почитайте спецификацию конкретного движка
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
26 апр. 2024, в 07:20
2000 руб./за проект
26 апр. 2024, в 06:46
1000 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект