Обучение более эффективному использованию массивов sort() путем понимания первоначальных причудливых примеров.

Согласно w3school.com, определение и использование метода массива sort() в JavaScript включает в себя:
• сортировку элементов массива.
• перезапись исходного массива.
• сортирует элементы в виде строк в алфавитном порядке и порядке возрастания [а также в порядке убывания].

МОМЕНТЫ ИСПОЛЬЗОВАНИЯ, больше нет: ниже мы рассмотрим «те ошибки», которые возникают при первых попытках использования методов sort() в JavaScript.
• применение метода . Метод sort() на имя переменной массива не будет сортировать элемент массива так, как мы изначально хотели. Вот пример:

EXAMPLE #1 of array.sort
• let numbers = [0, 1 , 2, 3, 10, 20, 30 ]; 
• numbers.sort(); 
• console.log(numbers);
   • OUTPUT from console.log(numbers) is [ 0, 1, 10, 2, 20, 3, 30 ]
• WHY?? In EXAMPLE #1, the sort() method is sorting the elements in the number's array by the ascending order of the first digit per index, not the index's 2nd digit in that of "10" versus "2". The number one in "10" places this element first before "2" is the logic here.

В методе массива sort() мы хотим установить или определить альтернативный порядок сортировки в Функции сравнения. Это позволит точно отсортировать элементы массива без лишних возвратов, и вот протоколы для выполнения с помощью метода sort():
Попробуйте этот array.sort(comparefunction) вместо массива. , в зависимости от аргументов. Учитывайте правила возвращаемого значения в следующем маркере.
• Если результат отрицательный, то a сортируется перед b.
• Если результат положительный, то b отсортировано до а.
• Если результат равен 0, то порядок сортировки двух значений не изменяется.

SYNTAX array sort() 
function compareNumbers(a, b) {
 return a - b;
}
Let's sort it better with EXAMPLE #1
• let numbers = [0, 1 , 2, 3, 10, 20, 30 ]; 
• non-arrow function
      numbers.sort(function(a, b){
         if(a > b) return 1;
         if(a < b) return -1;
         return 0;
      }
• arrow function
    numbers.sort((a, b,) => {
       if(a > b) return 1;
       if(a < b) return -1;
       return 0;    
    }
• arrow function
numbers.sort((a, b,) => {
    if(a > b) return 1;
    if(a < b) return -1;
    return 0;    
}

Спасибо, что прочитали.

Удачного кодирования.

Ресурсы:
16.9: Функции массивов: sort() — Темы JavaScript/ES6. Youtube.com
«Array.prototype.sort()-JavaScript | МДН. developer.mozilla.org
«Метод массива sort | Учебник по JavaScript. Youtube.com.
«JavaScript Array sort: Сортировка элементов массива». JavaScriptTutorial.net
Метод JavaScript Array sort(). w3schools.com