The   sort()>     metoda    w JavaScript porządkuje elementy tablicy i zwraca posortowaną tablicę. Domyślnie sortuje elementy alfabetycznie, traktując je jak ciągi znaków.
Jednak w przypadku sortowania numerycznego można udostępnić niestandardową funkcję porównania. Funkcja ta dyktuje kryteria sortowania, umożliwiając precyzyjną kontrolę nad procesem sortowania. `sort()` zwiększa wydajność i funkcjonalność aplikacji JavaScript, umożliwiając organizowanie elementów tablicy zgodnie z określonymi wymaganiami w sposób profesjonalny i formalny.
Składnia
arr.sort(compareFunction);>
Parametry
- array>: Tablica, która ma zostać posortowana.
- compareFunction>(Opcjonalnie): Funkcja określająca porządek sortowania. W przypadku pominięcia elementy tablicy są sortowane na podstawie ich punktów kodowych Unicode.
Wartość zwracana
Ta metoda zwraca odwołanie do posortowanej oryginalnej tablicy.
string.format w Javie
Przykłady:
Przykład 1: Sortowanie tablicy ciągów
Ten przykład pokazuje użycie funkcji sort().
JavaScript
 // JavaScript to illustrate sort() function function func() {  // Original string  let arr = ['Geeks', 'for', 'Geeks']  console.log(arr);  // Sorting the array  console.log(arr.sort()); } func();>   Wyjście
[ 'Geeks', 'for', 'Geeks' ] [ 'Geeks', 'Geeks', 'for' ]>
Wyjaśnienie:
Thesort()>metoda przestawia elementyarr>array alfabetycznie, tworząc wynik['Geeks', 'Geeks', 'for']>.
jak zamienić string na int
Przykład 2: Sortowanie tablicy liczb bez funkcji porównania
Tutaj sortować() Metoda porządkuje elementy tablicy w kolejności rosnącej.
JavaScript // JavaScript to illustrate sort() function function func() {  //Original string  let arr = [2, 5, 8, 1, 4]  //Sorting the array  console.log(arr.sort()); } func();>   Wyjście
[ 1, 2, 4, 5, 8 ]>
Wyjaśnienie:
Thesort()>metoda jest wywoływana na tablicy liczb[2, 5, 8, 1, 4]>. Thesort()>metoda posortuje elementy alfabetycznie, ponieważ nie jest dostępna funkcja porównania. Dlatego wynik będzie[1, 2, 4, 5, 8]>, który jest posortowany alfabetycznie na podstawie ciągów reprezentujących liczby.
lista.sortuj Java
Przykład 3: Sortowanie wartości liczbowej bez funkcji porównania
Tutaj sortujemy wartość liczbową bez funkcji porównania
JavaScript let numbers = [20, 5.2, -120, 100, 30, 0] console.log(numbers.sort())>
   Wyjście
[ -120, 0, 100, 20, 30, 5.2 ]>
Wyjaśnienie:
Kiedy używaszsort()>bez funkcji porównania, JavaScript domyślnie sortuje elementy tablicy jako ciągi znaków, co nie zawsze może dawać oczekiwane wyniki w przypadku tablic numerycznych. Rozłóżmy proces sortowania:
- JavaScript konwertuje każdy element tablicy na ciąg znaków.
- Następnie porównuje jednostki kodu UTF-16 każdego znaku w ciągu i sortuje je na podstawie wartości punktu kodowego Unicode.
Oto, co dzieje się z Twoją tablicą:
- Liczby są konwertowane na ciągi znaków:['20', '5.2', '-120', '100', '30', '0']>.
- Posortowane alfabetycznie,-120>jest na pierwszym miejscu, ponieważ->ma niższą wartość punktową kodu Unicode niż cyfry (0>Do9>). Potem przychodzi0>, śledzony przez100>,20>,30>, I5.2>.
Przykład 4: Sortowanie wartości liczbowych za pomocą funkcji porównania
Wąż Pythona kontra Anakonda
Nieoczekiwany błąd, który wystąpił w powyższym przykładzie, możemy rozwiązać, używając metody sort() dla liczb, korzystając z poniższej funkcji porównania.
JavaScript let numbers = [20, 5.2, -120, 100, 30, 0]; /* Logic:   20 - (5.2) = +ve =>5.2 zostanie umieszczone przed 20, 20 - (-120) = +ve => -120 zostanie umieszczone przed 20, 20 - (100) = -ve => 100 zostanie umieszczone po 20, 20 - (30) = - ve => 30 zostanie umieszczone po 20, 20 - (0) = +ve => 0 zostanie umieszczone przed 20. Podobnie dla każdego elementu sprawdzamy i umieszczamy je odpowiednio w iteracjach. */ funkcja porównaj(a, b) { zwróć a - b; } konsola.log(liczby.sort(porównaj));>   Wyjście
[ -120, 0, 5.2, 20, 30, 100 ]>
Wyjaśnienie:
- Thecompare>funkcja odejmujeb>za>. Jeśli wynik będzie negatywny,a>przychodzi wcześniejb>w posortowanej tablicy; jeśli pozytywne,b>przychodzi wcześnieja>; jeśli zero, ich względna kolejność pozostaje niezmieniona.
- Udostępniając tę niestandardową funkcję porównania dosort()>metoda JavaScript sortuje tablicęnumbers>na podstawie wartości liczbowych jego elementów.
Proszę przejść przez to Jak sortować tablicę numeryczną za pomocą JavaScript? , aby dowiedzieć się, jak działa funkcja sortowania tablicy JavaScript
Mamy pełną listę metod Javascript Array. Aby je sprawdzić, przejrzyj tę instrukcję Tablica JavaScript Pełne odniesienie artykuł.
Obsługiwane przeglądarki:
- GoogleChrome
- Krawędź
- Internet Explorera
- Firefoksa
- Opera
- Safari
