The sort()>
metoda v JavaScriptu razporedi elemente matrike na svoje mesto in vrne razvrščeno matriko. Privzeto razvršča elemente po abecedi in jih obravnava kot nize.
Vendar pa lahko za številčno razvrščanje zagotovite primerjalno funkcijo po meri. Ta funkcija narekuje kriterije razvrščanja, kar omogoča natančen nadzor nad postopkom razvrščanja. `sort()` izboljšuje učinkovitost in funkcionalnost aplikacij JavaScript, tako da vam omogoča organiziranje elementov polja v skladu s posebnimi zahtevami na profesionalen in formalen način.
Sintaksa
arr.sort(compareFunction);>
Parametri
array>
: Niz, ki ga želite razvrstiti.compareFunction>
(Izbirno): funkcija, ki definira vrstni red razvrščanja. Če je izpuščeno, so elementi matrike razvrščeni glede na njihove kodne točke niza Unicode.
Povratna vrednost
Ta metoda vrne referenco razvrščene izvirne matrike.
java branje datoteke csv
Primeri:
Primer 1: Razvrščanje matrike nizov
Ta primer prikazuje uporabo funkcije sort().
JavaScript
// JavaScript to illustrate sort() function function func() { // Original string let arr = ['Geeks', 'for', 'Geeks'] console.log(arr); // Sorting the array console.log(arr.sort()); } func();>
Izhod
[ 'Geeks', 'for', 'Geeks' ] [ 'Geeks', 'Geeks', 'for' ]>
Pojasnilo:
Thesort()>
metoda preureja elementearr>
matriko po abecedi, kar ustvari izhod['Geeks', 'Geeks', 'for']>
.
java string to int
Primer 2: Razvrščanje niza števil brez primerjalne funkcije
Tukaj, razvrsti() metoda razporedi elemente matrike v naraščajočem vrstnem redu.
JavaScript // JavaScript to illustrate sort() function function func() { //Original string let arr = [2, 5, 8, 1, 4] //Sorting the array console.log(arr.sort()); } func();>
Izhod
[ 1, 2, 4, 5, 8 ]>
Pojasnilo:
Thesort()>
metoda se kliče na nizu števil[2, 5, 8, 1, 4]>
. Thesort()>
bo razvrstila elemente po abecedi, ker ni na voljo primerjalne funkcije. Zato bo rezultat[1, 2, 4, 5, 8]>
, ki je razvrščen po abecedi na podlagi nizovnih predstavitev števil.
armstrong številka
Primer 3: Razvrščanje številske vrednosti brez primerjalne funkcije
Tukaj razvrščamo številsko vrednost brez primerjalne funkcije
Javascript let numbers = [20, 5.2, -120, 100, 30, 0] console.log(numbers.sort())>
Izhod
[ -120, 0, 100, 20, 30, 5.2 ]>
Pojasnilo:
Ko uporabljatesort()>
brez primerjalne funkcije, JavaScript privzeto razvrsti elemente polja kot nize, kar morda ne bo vedno prineslo pričakovanih rezultatov za številska polja. Razčlenimo postopek razvrščanja:
- JavaScript pretvori vsak element matrike v niz.
- Nato primerja kodne enote UTF-16 vsakega znaka v nizih in jih razvrsti glede na vrednost kodne točke Unicode.
Evo, kaj se zgodi z vašim nizom:
- Številke se pretvorijo v nize:
['20', '5.2', '-120', '100', '30', '0']>
. - Ko so razvrščeni po abecedi,
-120>
je na prvem mestu, ker->
ima nižjo vrednost kodne točke Unicode kot številke (0>
do9>
). Potem pride0>
, čemur sledi100>
,20>
,30>
, in5.2>
.
Primer 4: Razvrščanje številske vrednosti s funkcijo primerjave
seznam pisav gimp
Nepričakovano napako, do katere je prišlo v zgornjem primeru, lahko odpravimo z uporabo metode sort() za številke z naslednjo primerjalno funkcijo.
Javascript let numbers = [20, 5.2, -120, 100, 30, 0]; /* Logic: 20 - (5.2) = +ve =>5.2 bi bil postavljen pred 20, 20 - (-120) = +ve => -120 bi bil postavljen pred 20, 20 - (100) = -ve => 100 bi bil postavljen za 20, 20 - (30) = - ve => 30 bi bilo postavljeno za 20, 20 - (0) = +ve => 0 bi bilo postavljeno pred 20, Podobno za vsak element preverimo in ga ustrezno postavimo v iteracijah. */ funkcija primerjava(a, b) { return a - b; } console.log(numbers.sort(compare));>
Izhod
[ -120, 0, 5.2, 20, 30, 100 ]>
Pojasnilo:
- The
compare>
funkcija odštejeb>
oda>
. Če je rezultat negativen,a>
prihaja prejb>
v razvrščenem nizu; če je pozitiven,b>
prihaja preja>
; če je nič, njihov relativni vrstni red ostane nespremenjen. - Z zagotavljanjem te primerjalne funkcije po meri za
sort()>
JavaScript razvrsti matrikonumbers>
na podlagi številčnih vrednosti njegovih elementov.
Prosim, pojdite skozi to Kako razvrstiti številsko matriko s pomočjo JavaScripta? , če želite izvedeti, kako deluje funkcija razvrščanja nizov JavaScript
Imamo popoln seznam metod Javascript Array, če jih želite preveriti, pojdite skozi to Javascript Array Popolna referenca Članek.
Podprti brskalniki:
- Google Chrome
- Edge
- internet Explorer
- Firefox
- Opera
- Safari