110 of 264 menu

Metod sort

Metod sort izvršava sortiranje niza u leksikografskom poretku i vraća već izmenjeni niz. Kao opcioni parametar može se navesti sopstvena funkcija za sortiranje.

Sintaksa

niz.sort([funkcija]);

Primer

Hajde da sortiramo niz:

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

Rezultat izvršavanja koda:

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

Primer

Hajde da sortiramo niz sa brojevima:

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

Rezultat izvršavanja koda:

[1, 2, 4, 7]

Primer

Hajde da dodamo u niz brojeve i sortiramo ga:

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

Kao rezultat izvršavanja koda videćemo da se brojevi ne raspoređuju u rastućem poretku, već u leksikografskom poretku, odnosno brojevi se međusobno porede kao stringovi. Pritom se poređenje vrši po svakom karakteru, da li je kod prvog karaktera veći od koda susednog itd. Rezultat:

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

Primer

Sada hajde da sortiramo niz pomoću funkcije, u kojoj ćemo navesti uslov - ako je prvi parametar veći od drugog, onda ga premeštamo (za to u return stavljamo bilo koji pozitivan broj). U suprotnom slučaju premeštanje nije potrebno i navodimo 0 ili bilo koji negativan broj:

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

Rezultat izvršavanja koda:

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

Primer

Hajde da za praktičnost skratimo kod u našoj funkciji iz prethodnog primera:

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

Rezultat izvršavanja koda:

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

Primer

A sada pomoću funkcije sortirajmo niz u opadajućem poretku:

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

Rezultat izvršavanja koda:

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

Primer

Hajde da sortiramo niz objekata po ključu 'one' u rastućem poretku:

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);

Rezultat izvršavanja koda:

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

Primer

A sada hajde da sortiramo niz objekata po ključu '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);

Rezultat izvršavanja koda:

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

Primer

Hajde da proverimo da li se niz promenio nakon primenjivanja metoda sort:

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

Rezultat izvršavanja koda:

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

Pogledajte takođe

  • metod filter,
    koji omogućava filtriranje elemenata niza
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij