Странная сортировка массива при использовании Array.prototype.sort в Chrome

Я нашел странность при использованииArray.prototype.sort() на массиве чисел, и я не уверен, что это вызывает.

Моя цель - перевернуть массив, используяsort (не используетсяreverse) так что я могу это так:

const shouldReverse = Math.random() > 0.5,
      result = foo().bar().map(...).reverseIf(shouldReverse);

Я считаю, что я должен быть в состоянии достичь этого с помощьюsort, который, кажется, работает в некоторых случаях, но не в других.

Вот рабочий пример:

const myArray = ['a', 'b', 'c', 'd'],
      mySortedArray = myArray.sort(() => 1); 

console.log(mySortedArray);
["d", "c", "b", "a"]

И нерабочий пример:

const myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k'],
      mySortedArray = myArray.sort(() => 1); 

console.log(mySortedArray);
["f", "k", "a", "j", "i", "h", "g", "b", "e", "d", "c"]

Это происходит только в Chrome и только когда в массиве более 10 элементов - может ли это быть какой-то формой оптимизации в движке Chrome V8?

Ответы на вопрос(1)

Ваш ответ на вопрос