110 of 264 menu

Metoda sort

Metoda sort wykonuje sortowanie tablicy w porządku leksykograficznym i zwraca już zmodyfikowaną tablicę. Jako opcjonalny parametr można podać własną funkcję do sortowania.

Składnia

tablica.sort([funkcja]);

Przykład

Posortujmy tablicę:

let arr = ['d', 'b', 'a', 'c']; console.log(arr.sort());

Wynik wykonania kodu:

['a', 'b', 'c', 'd']

Przykład

Posortujmy tablicę z liczbami:

let arr = [4, 1, 7, 2]; console.log(arr.sort());

Wynik wykonania kodu:

[1, 2, 4, 7]

Przykład

Dodajmy do tablicy liczby i posortujmy ją:

let arr = [1, 123, 2, 4, 111, 7]; console.log(arr.sort());

W wyniku wykonania kodu zobaczymy, że liczby są ułożone nie w porządku rosnącym, ale w porządku leksykograficznym, czyli liczby są porównywane między sobą jak ciągi znaków. Przy tym porównanie odbywa się po każdym znaku, czy kod pierwszego znaku jest większy niż kod sąsiedniego itd. Wynik:

[1, 111, 123, 2, 4, 7]

Przykład

Teraz posortujmy tablicę za pomocą funkcji, w której określimy warunek - jeśli pierwszy parametr jest większy niż drugi, to go przestawiamy (w tym celu w return dowolna liczba dodatnia). W przeciwnym przypadku przestawienie nie jest wymagane i podajemy 0 lub dowolną liczbę ujemną:

let arr = [1, 123, 2, 4, 111, 7]; arr.sort(function(a, b) { if (a > b) { return 1; } else { return -1; } }); console.log(arr);

Wynik wykonania kodu:

[1, 2, 4, 7, 111, 123]

Przykład

Dla wygody skróćmy kod w naszej funkcji z poprzedniego przykładu:

let arr = [1, 123, 2, 4, 111, 7]; arr.sort(function(a, b) { return a - b; }); console.log(arr);

Wynik wykonania kodu:

[1, 2, 4, 7, 111, 123]

Przykład

A teraz za pomocą funkcji posortujmy tablicę w porządku malejącym:

let arr = [1, 123, 2, 4, 111, 7]; arr.sort(function(a, b) { return b - a; }); console.log(arr);

Wynik wykonania kodu:

[123, 111, 7, 4, 2, 1]

Przykład

Posortujmy tablicę obiektów według klucza 'one' w porządku rosnącym:

let arr = [ {one: 1, two: 2}, {one: 7, two: 1}, {one: 3, two: 3} ]; arr.sort(function(a, b) { return a.one - b.one; }); console.log(arr);

Wynik wykonania kodu:

[ {one: 1, two: 2}, {one: 3, two: 3}, {one: 7, two: 1} ]

Przykład

A teraz posortujmy tablicę obiektów według klucza 'two':

let arr = [ {one: 1, two: 2}, {one: 7, two: 1}, {one: 3, two: 3} ]; arr.sort(function(a, b) { return a.two - b.two; }); console.log(arr);

Wynik wykonania kodu:

[ {one: 7, two: 1}, {one: 1, two: 2}, {one: 3, two: 3} ]

Przykład

Sprawdźmy, czy tablica zmieniła się po zastosowaniu metody sort:

let arr = ['b', 'a', 'd', 'c']; let res = arr.sort(); console.log(arr);

Wynik wykonania kodu:

['a', 'b', 'c', 'd']

Zobacz też

  • metoda filter,
    która pozwala filtrować elementy tablicy
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć