The način razvrščanja se uporablja za urejanje različnih elementov v polju v določenem vrstnem redu.
Sintaksa
Splošna sintaksa metode razvrščanja je:
matriko.razvrsti ();Ta metoda privzeto vrne razvrščeno polje v naraščajočem vrstnem redu.
Obravnavali bi nekaj primerov za razumevanje metode razvrščanja v JavaScript.
Primeri
Predpostavljamo niz nizov, v katerem imamo nekaj različnih imen operacijskih sistemov Linux.
naj arr = ["Ubuntu", "Fedora", "CentOS", "Debian", "Kali Linux"]Zdaj, če uporabimo metodo razvrščanja nad to matriko:
arr.razvrsti ();Vsekakor bo matriko razvrstila po abecedi. Rezultate lahko vidimo na spodnjem posnetku zaslona.
Če pa želimo niz dobiti v obratnem / padajočem vrstnem redu. Nad razvrščenim nizom lahko uporabimo vgrajeno funkcijo Javascript v obratni obliki:
var sortedArray = arr.razvrsti ();sortedArray.vzvratno ();
Krajši način za obrat je:
arr.razvrsti ().vzvratno ();Vredu! Za struno se je dobro obnesla. Poskusimo, če deluje tudi pri številkah.
Torej, najprej predpostavimo vrsto števil.
Nato uporabite vrsto razvrščanja nad nizom števil.
arr.razvrsti ();Zdi se, da ni delovalo dobro kot za struno. Ker metoda razvrščanja najprej pretvori številke v nize, nato pa razvrsti na osnovi Unicode. Čeprav je »8« pred številko 14 v številskem vrstnem redu. Toda v vrstnem redu kodnih enot UTF-16 je "14" pred "8". Dobra stvar v Javascriptu je, da imamo rešitev za to.
CompareFunction
Tukaj je koncept funkcije primerjave, ki je zelo koristen pri razvrščanju številk. Funkcijo primerjave lahko uporabimo z metodo razvrščanja kot funkcijo povratnega klica, ki ima dva elementa. Nato jih razvrsti glede na našo zahtevo v funkciji primerjave in jih vrne v metodo razvrščanja, pri čemer to neprestano počne, dokler ne doseže konca polja.
Sintaksa metode razvrščanja s funkcijo compareFunction bi bila taka:
matriko.razvrsti (compareFunction);Če si zdaj ogledamo tehnične podrobnosti funkcije compaFunction, tako to dejansko deluje. Če za metodo razvrščanja ne zagotovimo funkcije primerjave, bo razvrščena v skladu z naročili enot UTF-16. Če uporabimo funkcijo compareFunction, bi bili vsi elementi razvrščeni v skladu z vrnjeno vrednostjo compaFunction. Torej, če želimo napisati primerjalno funkcijo za številke. To bi bilo takole:
funkcija (a, b) vrni a - bCompareFunction zajema dve vrednosti hkrati in vrne tri vrste vrednosti.
True ali "1", če je prva vrednost pred drugo vrednostjo ali je prva vrednost večja od druge vrednosti:
False ali "-1", če prva vrednost pride za drugo vrednostjo ali je prva vrednost večja od druge vrednosti.
In "0", če sta dve vrednosti enaki.
Zdaj, če ga skušamo uporabiti za razvrščanje niza števil. Lahko ga uporabimo tako:
arr.razvrsti (funkcija (a, b) vrni a - b)Kot lahko vidite v izhodu, je bila vrsta s številkami dostojno razvrščena.
Krajši način izvajanja iste naloge bo tak:
arr.razvrsti ((a, b) => a - b)Toda to deluje samo za primerjavo številk.
Z metodo razvrščanja lahko uporabimo tudi razvrščanje polja predmetov, odvisno od vrednosti predmeta, ki ga želimo razvrstiti v niz predmetov. Če domnevamo, da bi želeli na podlagi števila uporabnikov razvrstiti vrsto predmetov, v katerih vsak objekt vključuje operacijske sisteme Linux in število njihovih uporabnikov, bomo uporabili naslednje:
arr = [ime: "Ubuntu", uporabniki: 3000
ime: "Fedora", uporabniki: 1500
ime: "CentOS", uporabniki: 2000
ime: "Debian", uporabniki: 5000
ime: "Kali Linux", uporabniki: 4000
]
Torej, da bi razvrstili na podlagi uporabnikov. Funkcija razvrščanja bi bila taka:
arr.sort (() => vrni a.uporabniki - b.uporabniki)To so različni načini uporabe metode razvrščanja za razvrščanje nizov katere koli vrste.
Zaključek
V tem članku smo se naučili, kako lahko z vgrajeno funkcijo za razvrščanje Javascripta razvrstimo vrsto različnih vrst. Ta članek na zelo enostaven, poglobljen in učinkovit način razloži koncept funkcije razvrščanja od začetnika do srednje stopnje. Torej, nadaljujte z učenjem, delom in pridobivanjem izkušenj v Javascriptu z linuxhint.com da bi ga bolje razumeli. Najlepša hvala.