Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   обясните про sotr() (https://javascript.ru/forum/misc/78330-obyasnite-pro-sotr.html)

ifnvhdkgty 28.08.2019 13:51

обясните про sotr()
 
let arr = [ 1, 2, 15 ];
arr.sort();
alert( arr );  // 1, 15, 2



dw(arr.sort((a,b) => a-b));
почему именно - ? т есть 1-2=false, 2-15= false, ? или как это происзодит?

ksa 28.08.2019 13:59

Цитата:

Сообщение от ifnvhdkgty
1, 15, 2

Это вариант сортировки данных "как строки"...
Цитата:

Сообщение от ifnvhdkgty
arr.sort((a,b) => a-b)

А это уже сортировка пользовательская, ее использование описано в учебнике...
Цитата:

Если указана функция, то элементы массива будут отсортированы согласно значениям, возвращаемых функцией. Условия на функцию можно записать следующим образом:
function sortFunction(a, b){
  if(a меньше, чем b по некоторому критерию)
     return -1 // Или любое число, меньшее нуля
  if(a больше, чем b по некоторому критерию)
     return 1  // Или любое число, большее нуля
  // в случае а = b вернуть 0
  return 0
}

https://javascript.ru/Array/sort


Часовой пояс GMT +3, время: 23:16.