Mam tablicę liczb punktowych float:Sortowanie tablicę liczb punktowych obrocie
[ 82.11742562118049, 28.86823689842918, 49.61295450928224, 5.861613903793295 ]
Po działa sort() na tablicy uzyskać to:
[ 28.86823689842918, 49.61295450928224, 5.861613903793295, 82.11742562118049 ]
zauważyć jak 5.8 ... jest większy niż 49,6 ... dla JavaScript (węzeł). Dlaczego?
Jak poprawnie posortować te numery?
Użyj "arr.sort (function (a, b) {return a-b;});'. W obecnym stanie wartości są sortowane alfabetycznie. "2" występuje przed "4", czyli przed "5", przed "8" (porównanie jest pierwszą "literą" każdego numeru ... dopóki nie pasują, to porównuje następną literę i tak on) – Ian
Dla odniesienia: http://www.w3schools.com/jsref/jsref_sort.asp. Domyślnie sortowanie tablicy javascript sortuje alfabetycznie i rosnąco. W związku z tym, dlaczego podajesz metodę sortowania dostarczoną przez @Ian –
Ogólnie, nie odwołuj się do szkół w3, ponieważ mogą one być nieprawidłowe w szerokim zakresie rzeczy. – jtromans