сортировка массивов в js
Друзья, разъясните мне, отчего так в жизни? Я уже совсем отчаялся понять.
Вот есть у нас такой стандартный метод у массивов в js - sort.
Дополнительным параметром мы можем задать функцию, которая, собственно, сортирует.
Например, arr.sort(function(a,b){return a>b?1:a<b?-1:0}) - по возрастанию.
Например, arr.sort(function(a,b){return a>b?-1:a<b?1:0}) - по убыванию.
Простая логика подсказывает,
arr.sort(function(a,b){return a>b?0:a<b?0:0});
должно возвращать всё тот же массив, с тем же порядком элементов.
Но так увы, происходит не всегда.
А я не могу понять ни логику перестановок, ни, собственно, почему такие перестановки происходят.
Вот, например, проверьте в мозилле:
88,40,1,95,5,62,87,15
1,40,95,5,62,87,88,15
Почему?
Кросс пост в ру_вебдев.
Вот есть у нас такой стандартный метод у массивов в js - sort.
Дополнительным параметром мы можем задать функцию, которая, собственно, сортирует.
Например, arr.sort(function(a,b){return a>b?1:a<b?-1:0}) - по возрастанию.
Например, arr.sort(function(a,b){return a>b?-1:a<b?1:0}) - по убыванию.
Простая логика подсказывает,
arr.sort(function(a,b){return a>b?0:a<b?0:0});
должно возвращать всё тот же массив, с тем же порядком элементов.
Но так увы, происходит не всегда.
А я не могу понять ни логику перестановок, ни, собственно, почему такие перестановки происходят.
Вот, например, проверьте в мозилле:
88,40,1,95,5,62,87,15
1,40,95,5,62,87,88,15
Почему?
Кросс пост в ру_вебдев.
