The sort()> metodas „JavaScript“ sutvarko masyvo elementus į vietą ir grąžina surūšiuotą masyvą. Pagal numatytuosius nustatymus jis rūšiuoja elementus abėcėlės tvarka, laikydamas juos eilutėmis.
Tačiau norėdami rūšiuoti pagal skaičių, galite pateikti pasirinktinę palyginimo funkciją. Ši funkcija diktuoja rūšiavimo kriterijus, leidžiančius tiksliai valdyti rūšiavimo procesą. „sort()“ padidina „JavaScript“ programų efektyvumą ir funkcionalumą, leisdama profesionaliai ir formaliai tvarkyti masyvo elementus pagal konkrečius reikalavimus.
Sintaksė
arr.sort(compareFunction);>
Parametrai
array>: masyvas, kurį reikia rūšiuoti.compareFunction>(Pasirenkama): funkcija, apibrėžianti rūšiavimo tvarką. Jei praleista, masyvo elementai rūšiuojami pagal jų eilutę Unikodo kodo taškais.
Grąžinimo vertė
Šis metodas grąžina surūšiuoto pradinio masyvo nuorodą.
int į char java
Pavyzdžiai:
1 pavyzdys: Eilučių masyvo rūšiavimas
Šiame pavyzdyje parodytas funkcijos sort() naudojimas.
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();> Išvestis
[ 'Geeks', 'for', 'Geeks' ] [ 'Geeks', 'Geeks', 'for' ]>
Paaiškinimas:
Thesort()>metodas pertvarko elementusarr>masyvas abėcėlės tvarka, sudarydamas išvestį['Geeks', 'Geeks', 'for']>.
2 pavyzdys: Skaičių masyvo rūšiavimas be palyginimo funkcijos
Čia, Rūšiuoti () metodas išdėsto masyvo elementus didėjančia tvarka.
kaip konvertuoti eilutę į sveikąjį skaičių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();> Išvestis
[ 1, 2, 4, 5, 8 ]>
Paaiškinimas:
Thesort()>metodas iškviečiamas skaičių masyve[2, 5, 8, 1, 4]>. Thesort()>metodas surūšiuos elementus abėcėlės tvarka, nes nepateikiama palyginimo funkcija. Todėl produkcija bus[1, 2, 4, 5, 8]>, kuris surūšiuotas abėcėlės tvarka pagal skaičių eilučių atvaizdus.
darbuotojų atrankos komisijos reikšmė
3 pavyzdys: Skaitmeninės reikšmės rūšiavimas be palyginimo funkcijos
Čia mes rūšiuojame skaitines vertes be palyginimo funkcijos
Javascript let numbers = [20, 5.2, -120, 100, 30, 0] console.log(numbers.sort())>
Išvestis
[ -120, 0, 100, 20, 30, 5.2 ]>
Paaiškinimas:
Kai naudojatesort()>metodas be palyginimo funkcijos, „JavaScript“ pagal numatytuosius nustatymus rūšiuoja masyvo elementus kaip eilutes, o tai ne visada gali duoti laukiamus skaitmeninių masyvų rezultatus. Išskaidykime rūšiavimo procesą:
- JavaScript konvertuoja kiekvieną masyvo elementą į eilutę.
- Tada jis palygina kiekvieno eilutės simbolio UTF-16 kodo vienetus ir surūšiuoja juos pagal Unicode kodo taško reikšmę.
Štai kas nutinka jūsų masyvei:
- Skaičiai konvertuojami į eilutes:
['20', '5.2', '-120', '100', '30', '0']>. - Surūšiavus abėcėlės tvarka,
-120>pirmas, nes->turi mažesnę Unikodo kodo taško reikšmę nei skaitmenys (0>į9>). Tada ateina0>, po kurio seka100>,20>,30>, ir5.2>.
4 pavyzdys: Skaitinių reikšmių rūšiavimas naudojant palyginimo funkciją
java loginė eilutė
Netikėtą klaidą, įvykusią aukščiau pateiktame pavyzdyje, galime išspręsti naudodami skaitiniams skaitiniams skirtą sort() metodą, naudodami šią palyginimo funkciją.
Javascript let numbers = [20, 5.2, -120, 100, 30, 0]; /* Logic: 20 - (5.2) = +ve =>5.2 būtų dedamas prieš 20, 20 - (-120) = +ve => -120 būtų prieš 20, 20 - (100) = -ve => 100 būtų dedamas po 20, 20 - (30) = - ve => 30 būtų dedamas po 20, 20 - (0) = +ve => 0 būtų dedamas prieš 20, Panašiai kiekvienam elementui patikriname ir atitinkamai išdėstome iteracijose. */ function palyginti(a, b) { return a - b; } console.log(skaičiai.rūšiuoti(palyginti));>>
Išvestis Paaiškinimas: - The
compare>funkcija atimab>iša>. Jei rezultatas neigiamas,a>ateina anksčiaub>surūšiuotame masyve; jei teigiamas,b>ateina anksčiaua>; jei nulis, jų santykinė tvarka lieka nepakitusi. - Pateikdami šią tinkintą palyginimo funkciją
sort()>metodas, JavaScript surūšiuoja masyvąnumbers>remiantis jo elementų skaitinėmis reikšmėmis.
Prašome pereiti tai Kaip rūšiuoti skaičių masyvą naudojant „JavaScript“? , norėdami sužinoti, kaip veikia JavaScript masyvo rūšiavimo funkcija
Turime visą „Javascript Array“ metodų sąrašą. Norėdami juos patikrinti, atlikite tai „Javascript Array“ visa nuoroda straipsnis.
Palaikomos naršyklės:
- Google Chrome
- Kraštas
- Internet Explorer
- Firefox
- Opera
- Safari