, чтобы сохранить свой прогресс
эх побольше бы заданий и теории по sort() и Функции сравнения (compareFunction). Вроде понятно что 1 и -1 получаем и от этого перестановка, но как это работает на большом массиве неотсортированных значений не понятно.
Я деталей не скажу, но насколько мне известно, там просто выполняется перебор, пока не будет достигнуто состояние, когда результат уже не меняется. То есть количество циклов может быть больше, чем кол-во элементов массива (потому что помимо >0 и <0 есть еще и 0 (когда сравниваемые элементы совпадают)). И да, не обязательно 1 и -1, можно именно меньше и больше нуля, и именно по этому самая коротка конструкция для сортировки числовых массивов - arr.sort((a,b) => a-b)