В a и b могут быть любые два произвольных значения из массива в любом произвольном порядке произвольное количество раз.
Порядок и прочее задаётся конкретным алгоритмом сортировки используемым конкретным движком конкретного браузера в данный конкретный момент. Причём для разной длины массива один и тот же движок может использовать разные алгоритмы в порядке оптимизации.
От вас требуется только сравнить a и b, никаких иных действий вы предпринимать не должны.
Я задавала похожий вопрос посмотрите - ссылка, причем в другом движке( например FireFox) первый элемент будет наоборот. Просто не зацикливайтесь какой из элементов появляется раньше, он сравнивает два элемента и перемещает их по массиву, если все же хотите понимать точно, то просто почитайте спецификацию конкретного движка