😳 а почему у них разный порядок a и b ? точнее почему в Хроме ? ))
Ну, функции-сортировщику, грубо говоря, пофиг на изначальный порядок элементов — она получает два элмента и сравнивает их. А как это реализовано в том или ином JS движке ей фиолетово. Никто не гарантирует даже, что они вообще будут по порядку сравниваться...
Хотя наблюдение очень забавное. Легко могу себе представить как кто-нибудь, решив убить двух зайцев, в эту функцию впендюрит какой-нить сайд-еффект, полагаясь, что вторым(первым) аргументом функции всегда будет следующий по порядку прохода — и выйдет обломчик в другом браузере.