JavaScript Sort

JavaScript Sort
Siden vi må administrere matriser på nesten alle programmeringsspråk, er JavaScript ikke annerledes. Arrays brukes vanligvis til å lagre data som strenger, tall, objekter og udefinerte. Med eksponentiell vekst av online data, trenger vi ofte å administrere og sortere dataene. Sortering er litt av en massiv opplevelse på nesten alle programmeringsspråk. Det krever mye krefter, maskinkraft og beregninger for å gjøre riktig sortering. Med utvidelse av data, må vi sortere og strukturere dataene på en vakker måte. JavaScript gir en innebygd array-mutatormetode () for sortering av matriser. I denne artikkelen vil vi se på JavaScripts innebygde sort () -metode og lære hva JavaScript Sort-metoden er, samt hvordan vi kan bruke den til vårt formål å sortere elementer i en matrise. La oss gå foran og begynne å jobbe!

De Sorter metode brukes til å ordne forskjellige elementer i en matrise i en bestemt rekkefølge.

Syntaks

Den generelle syntaks for sorteringsmetoden er:

Array.sortere();

Denne metoden returnerer den sorterte matrisen i stigende rekkefølge som standard.

Vi vil diskutere et par eksempler for å forstå sorteringsmetoden i JavaScript.

Eksempler

Vi antar at en rekke streng der vi har noen forskjellige navn på Linux -operativsystemer.

La arr = ["Ubuntu", "Fedora", "Centos", "Debian", "Kali Linux"]

Nå, hvis vi bruker sorteringsmetoden over denne matrisen:

arr.sortere();

Det vil definitivt sortere matrisen i alfabetisk rekkefølge. Vi kan se utdataene på skjermbildet nedenfor.

Men hvis vi ønsker å få strengen i omvendt/synkende rekkefølge. Vi kan bruke et JavaScripts innebygde omvendte funksjon over den sorterte matrisen som dette:

var sortedArray = arr.sortere();
SortertArray.omvendt();

Den kortere måten å gjøre det motsatte er:

arr.sortere().omvendt();

Ok! Det fungerte bra for strengen. La oss prøve hvis det også fungerer for tallene.
Så vi antar først en rekke tall.

La arr = [14,8,33,27,6]

Bruk deretter sorteringsmetoden over antallet tall.

arr.sortere();

Det virker som om det ikke fungerte bra som det gjorde for strengen. Fordi sorteringsmetoden først konverterer tallene til strengene og deretter sorterer på basen av Unicode. Selv om “8” kommer før “14” i numerisk rekkefølge. Men i UTF-16-kodeenheter kommer “14” før “8”. Det gode i JavaScript, vi fikk løsningen for dette.

Sammenlignfunksjon

Her kommer konseptet med sammenligningsfunksjon som kommer til nytte for å hjelpe til med å sortere tallene. Vi kan bruke en sammenligningsfunksjon med Sorter -metoden som en tilbakeringingsfunksjon, som tar to elementer. Den sorterer dem deretter etter vårt krav i sammenligningsfunksjonen og returnerer dem til Sorter -metoden, og gjør kontinuerlig dette til den når slutten av matrisen.

Syntaksen for sorteringsmetoden med CompareFunction ville være slik:

Array.sorter (sammenlign Funksjon);

Nå, hvis vi tar en titt på de tekniske detaljene i CompareFunction, er det slik det faktisk fungerer. Hvis vi ikke gir en sammenligning av sorteringsmetoden, vil den sortere i henhold til UTF-16-kodeenhetsordrer. Hvis vi bruker CompareFunction, vil alle elementer bli sortert i samsvar med returverdien av CompareFunction. Så hvis vi vil skrive en sammenligningsfunksjon for tallene. Det ville være akkurat slik:

funksjon (a, b) return a - b

CompareFunction tar to verdier om gangen og returnerer tre typer verdier.
Sann eller "1", hvis den første verdien kommer før den andre verdien eller den første verdien er større enn den andre verdien:
Falsk eller "-1", hvis den første verdien kommer etter den andre verdien eller den første verdien er større enn den andre verdien.
Og “0”, hvis to verdier er like.

Nå, hvis vi prøver å bruke det for å sortere antallet tall. Vi kan bruke det slik:

arr.Sorter (funksjon (a, b) return a - b)

Som du kan se i utdataene, har arrayen som har blitt sortert anstendig.

Den kortere måten å gjøre den samme oppgaven på vil være slik:

arr.Sorter ((a, b) => a - b)

Men dette fungerer bare for sammenligning av tallene.

Vi kan også bruke Sorter -metoden for å sortere rekke objekter avhengig av verdiene til objektet, som vi ønsker å sortere rekke objekter. Hvis vi antar at vi ønsker å sortere på basen av antall brukere en rekke objekter der hvert objekt inkluderer Linux -operativsystemene og antall brukere, vil vi bruke følgende:

arr = [
Navn: "Ubuntu", brukere: 3000
Navn: "Fedora", brukere: 1500
Navn: "Centos", brukere: 2000
Navn: "Debian", brukere: 5000
Navn: "Kali Linux", brukere: 4000
]

Så for å sortere på basen av brukerne. Sorteringsfunksjonen ville være slik:

arr.sorter (() => return a.Brukere - b.brukere)

Så dette er de forskjellige måtene å bruke sorteringsmetoden for å sortere matriser av enhver type.

Konklusjon

I denne artikkelen har vi lært hvordan vi kan sortere en rekke forskjellige typer ved hjelp av JavaScripts innebygde sorteringsfunksjon. Denne artikkelen forklarer begrepet sortfunksjon fra nybegynner til mellomnivå på en veldig enkel, dyp og effektiv måte. Så fortsett å lære, jobbe og få erfaring i JavaScript med Linuxhint.com å ha et bedre grep om det. Tusen takk.