JavaScript

Javascript-sortering

Javascript-sortering
Da vi skal administrere arrays på næsten alle programmeringssprog, er JavaScript ikke anderledes. Arrays bruges normalt til at gemme data som strenge, tal, objekter og udefineret. Med den eksponentielle vækst af online data er vi ofte nødt til at administrere og sortere dataene. Sortering er en slags massiv oplevelse på næsten alle programmeringssprog. Det kræver en stor indsats, maskinkraft og beregninger for at udføre den rigtige sortering. Med udvidelsen af ​​data er vi nødt til at sortere og strukturere dataene på en smuk måde. Javascript giver en indbygget array mutator metode sort () til sortering af arrays. I denne artikel vil vi se på Javascript's indbyggede sort () -metode og lære, hvad Javascript-sorteringsmetoden er, samt hvordan vi kan bruge den til vores formål til at sortere elementer i en matrix. Lad os gå videre og begynde at arbejde!

Det sorteringsmetode bruges til at arrangere forskellige elementer i en matrix i en bestemt rækkefølge.

Syntaks

Den generelle syntaks for sorteringsmetoden er:

array.sortere();

Denne metode returnerer det sorterede array i stigende rækkefølge som standard.

Vi diskuterede et par eksempler for at forstå sorteringsmetoden i JavaScript.

Eksempler

Vi antager en række streng, hvor vi har nogle forskellige navne på Linux-operativsystemer.

lad arr = ["Ubuntu", "Fedora", "CentOS", "Debian", "Kali Linux"]

Nu, hvis vi anvender sorteringsmetoden over denne matrix:

arr.sortere();

Det vil helt sikkert sortere arrayet i alfabetisk rækkefølge. Vi kan se output i skærmbilledet nedenfor.

Men hvis vi ønsker at få strengen i omvendt / faldende rækkefølge. Vi kan anvende et Javascript's indbyggede omvendte funktion over det sorterede array som dette:

var sortedArray = arr.sortere();
sorteretArray.baglæns();

Den kortere måde at gøre omvendt på er:

arr.sortere().baglæns();

I orden! Det fungerede fint for strengen. Lad os prøve, om det også fungerer for tallene.
Så vi antager først en række numre.

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

Anvend derefter sorteringsmetoden over antallet af tal.

arr.sortere();

Det ser ud til, at det ikke fungerede godt, som det gjorde for strengen. Fordi sorteringsmetoden først konverterer tallene til strengene og derefter sorterer på basis af Unicode. Skønt "8" kommer inden "14" i numerisk rækkefølge. Men i UTF-16-kodeenhedsrækkefølge kommer "14" før "8". Den gode ting i Javascript, vi fik løsningen på dette.

CompareFunction

Her kommer begrebet sammenligningsfunktion, der er praktisk til at hjælpe med at sortere numrene. Vi kan bruge en sammenligningsfunktion til sorteringsmetoden som en tilbagekaldsfunktion, som tager to elementer. Derefter sorterer de dem efter vores krav i sammenligningsfunktionen og returnerer dem til sorteringsmetoden og løbende gør dette, indtil det når slutningen af ​​arrayet.

Syntaksen for sorteringsmetoden med comparFunction vil være sådan:

array.sorter (sammenligneFunktion);

Nu, hvis vi ser på de tekniske detaljer i sammenligningsfunktionen, så fungerer det faktisk. Hvis vi ikke giver en sammenligningsfunktion til sorteringsmetoden, sorteres den i henhold til UTF-16-kodenhedens ordrer. Hvis vi bruger CompareFunction, vil alle elementer blive sorteret i overensstemmelse med returværdien af ​​CompareFunction. Så hvis vi vil skrive en sammenligningsfunktion for tallene. Det ville være sådan:

funktion (a, b) return a - b

CompareFunction tager to værdier ad gangen og returnerer tre typer værdier.
Sandt eller "1", hvis den første værdi kommer før den anden værdi, eller den første værdi er større end den anden værdi:
Falsk eller "-1", hvis den første værdi kommer efter den anden værdi, eller den første værdi er større end den anden værdi.
Og "0", hvis to værdier er ens.

Nu, hvis vi prøver at anvende det til at sortere antallet af tal. Vi kan anvende det sådan:

arr.sorter (funktion (a, b) return a - b)

Som du kan se i output, er array med numre blevet sorteret anstændigt.

Den kortere måde at udføre den samme opgave på vil være sådan:

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

Men dette fungerer kun til sammenligning af tallene.

Vi kan også bruge sorteringsmetoden til at sortere arrayet af objekter afhængigt af objektets værdier, som vi vil sortere arrayet af objekter. Hvis vi antager, at vi på basis af antallet af brugere vil sortere en matrix af objekter, hvor hvert objekt inkluderer Linux-operativsystemerne og antallet af deres brugere, så bruger vi følgende:

arr = [
navn: "Ubuntu", brugere: 3000
navn: "Fedora", brugere: 1500
navn: "CentOS", brugere: 2000
name: "Debian", brugere: 5000
navn: "Kali Linux", brugere: 4000
]

Så for at sortere på basis af brugerne. Sorteringsfunktionen ville være sådan:

arr.sort (() => returner a.brugere - b.brugere)

Så dette er de forskellige måder at bruge sorteringsmetoden til at sortere arrays af enhver type.

Konklusion

I denne artikel har vi lært, hvordan vi kan sortere en række forskellige typer ved hjælp af Javascript's indbyggede sorteringsfunktion. Denne artikel forklarer begrebet sorteringsfunktion fra nybegynder til mellemniveau på en meget nem, dybdegående og effektiv måde. Så fortsæt med at lære, arbejde og få erfaring i Javascript med linuxhint.com at få en bedre forståelse af det. Mange tak.

Sådan udvikler du et spil på Linux
For et årti siden ville ikke mange Linux-brugere forudsige, at deres foretrukne operativsystem en dag ville være en populær spilplatform til kommercie...
Open Source-porte med kommercielle spilmotorer
Gratis, open source og cross-platform spilmotorgendringer kan bruges til at spille gamle såvel som nogle af de temmelig nylige spiltitler. Denne artik...
Bedste kommandoliniespil til Linux
Kommandolinjen er ikke kun din største allierede, når du bruger Linux, den kan også være kilde til underholdning, fordi du kan bruge den til at spille...