logo

„JavaScript“ masyvo rūšiavimo () metodas

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:

  • Thecompare>funkcija atimab>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