@brakloginuf: że jak robisz operacje arytmetyczne to JS umie sam zdecydować czy dodajesz dwa stringi czy dwie liczby ale jak chcesz posortować liczby to sortuje to alfabetycznie
@cppguy: Poczytaj specyfikację lepiej, ma być zwrócone -1, 0 albo 1. A i są wersje Node.js, w których a-b może być różnie zinterpretowane i wyniki sortowania będą różne. Wiem, bo kiedyś mi się produkcja popsuła :-).
@brakloginuf: raczej pokłosie kijowej implementacji natywnego sorta. Nie wiem co ma dynamiczne typowanie do rzeczy w tym przypadku, konwersja typów liczbowych na stringi jest obecna w każdym współczesnym języku programowania
źródło: comment_1616055142kDZQdcPE4LlSd82loNGweB.jpg
Pobierzarr.sort((a,b)=>{if(a > b) return 1;
else if (a < b) return -1;
else return 0;
});
problem rozwiązany ( ͡º ͜ʖ͡º)
arr.sort((a,b)=>a-b);
oszczedzaj zasoby
@brakloginuf: raczej pokłosie kijowej implementacji natywnego sorta. Nie wiem co ma dynamiczne typowanie do rzeczy w tym przypadku, konwersja typów liczbowych na stringi jest obecna w każdym współczesnym języku programowania
arr.sort((a, b) => Math.sign(a - b));
Amateurs.
var arr = [1,100000,21,30,4]
w ktorym miejscu jest tak napisane?
źródło: comment_1616078962MLjoJGchOPT8ef8vQNA0Gu.jpg
Pobierzźródło: comment_1616135331oDNAgutT7751lFeWeZIS5l.jpg
Pobierz