Sorteerimine võimaldab teil andmeid nõutavas vormis korraldada. See tähendab, et nendele andmetele juurdepääs ja nende töötlemine muutub lihtsamaks. Selles artiklis „Massiivide sortimine JavaScripti kohta” uurime erinevaid võimalusi JavaScripti andmete sortimiseks. Keskendume järgmistele näpunäidetele,
- Sordimeetod JavaScriptis
- Numbriliste väärtuste sorteerimine
- Massiivi sortimine kasvavas järjekorras
- Massiivi sortimine kahanevas järjekorras
- Objektide massiivi sorteerimine
Nii et alustagem selle massiivi sorteerimise JavaScripti artikli esimese teemaga
Massiivi sortimine JavaScripti artiklis
Sordimeetod JavaScriptis
Sortimismeetod () sorteerib massiivi elemendid vastavalt ja tagastab järjestatud massiivi väljundina kasutajale. Sisseehitatud meetod teisendab iga massiivi elemendi a-ks string ja võrdleb neid Unicode'i koodipunktide järjekorras. Kuigi alustage paigaldamine kõigepealt.
Allolev kood järgib kõige lihtsamat massiivi sorti:
var music = ['Pop', 'Rock', 'Jazz', 'Blues', 'Metal'] var sorted = music.sort () document.write (muusika + '
')
Väljund:
kuidas kasutada anaconda pythoni
Bluus, jazz, metal, pop, rock
Jätkame nüüd jaotisega „Massiivi sortimine JavaScripti abil” ja näeme, kuidas saame arvväärtusi sortida,
Numbriliste väärtuste sorteerimine
Numbrite stringidena sorteerimine annab valesid ja valesid tulemusi.
var music = ['Pop', 'Rock', 'Jazz', 'Blues', 'Metal'] var sorted = music.sort () document.write (muusika + '
')
Väljund:
10 100,34,45,69,87
Tulemus näib olevat absoluutselt ebatäpne. See juhtub seetõttu, et numbriline massiiv teisendatakse stringiks sort () meetodi abil. Probleemi saab kõrvaldada, kasutades a võrdlema funktsioon.
Funktsiooni süntaks on järgmine:
array.sort ([võrdleFunktsioon])
Võrdlusfunktsioon sorteerib massiivi elemendid erinevate atribuutide ja erineva järjekorra alusel. Funktsioon sort () võrdleb kahte väärtust ja saadab väärtused võrdlusfunktsioonile.Võrdlusfunktsioon järgib allpool toodud testijuhtumeid:
- Kui kahe väärtuse (a & b) võrdlemise tulemus on negatiivne , a sorteeritakse enne b.
- Kui tulemus näib olevat positiivne , b sorteeritakse enne a.
- Kui tulemus on 0 siis ei ole muutust kuvatakse väärtuste a & b sortimisjärjekorras.
Selles JavaScripti massiivi sorteerimise bitis sorteerime andmed kasvavas järjekorras,
Massiivi sortimine kasvavas järjekorras
Järgmine näide näitab massiivi järjestamist kasvavas järjekorras.
var num = [45, 34, 69, 87, 100, 10] num.sort () // sorteerib numbrid massiivi document.write (num)
Väljund:
objektide massiivi loomine
3,18,25,28,29,69
Edasi liikudes kontrollime massiive kahanevas järjestuses
Massiivi sortimine kahanevas järjekorras
Massiivi saab järjestada kahanevas järjekorras järgmiselt:
var num = [3, 25, 18, 28, 69, 29] // Massiivi sorteerimine funktsiooni võrdlemise abil, kasutades funktsiooni num.sort (funktsioon (a, b) {return a - b}) document.write (num)
Väljund:
69,29,28,25,18,3
Me võime sorteerida isegi objektide massiive, vaatame, kuidas seda teha,
Objektide massiivi sorteerimine
Funktsiooni Võrdle saab kasutada objektimassiivide tõhusaks sorteerimiseks.
var people = [{nimi: 'Jeremy'}, {nimi: 'Ari'}, {nimi: 'Jonathan'}, {nimi: 'Alec'}, {nimi: 'Stephen'}] // Sorteeri nime järgi inimesed . sort (funktsioon (a, b) {var x = a.name.toLowerCase () // ignoreerib suurt ja väikest tähte var y = b.name.toLowerCase () // ignoreerib suurt ja väikest tähte, kui (xy) {return 1} // nimed peaksid olema võrdsed tagastamine 0}) // Looge kõik massiivi elemendid läbi (var i inimestel) {// Looge läbi kõik objekti atribuudid objektil (var prop inimestel [i]) {dokument .write (prop + ':' + inimesed [i] [prop] + '
')} document.write ('
')}
Väljund:
nimi: Alec
print_r php-s
nimi: Ari
nimi: Jeremy
nimi: Jonathan
nimi: Stephen
Artiklis selgitatud meetodid näitavad hoolikalt asjaolu, et võrdlusfunktsiooniga seotud sortimisfunktsioon mängib skriptikeeles otsustavat rolli.
Sellega jõuame selle ajaveebi lõppu teemal ‘Array Sort In JavaScript’. Loodan, et leidsite selle informatiivse ja kasuliku. Olge kursis rohkemate sarnaste teemade õpetustega. Võite vaadata ka meie koolitusprogrammio saate põhjalikke teadmisi jQuery ja selle erinevate rakenduste kohta reaalajas veebikoolituse jaoks, millel on 24-tunnine tugi ja juurdepääs kogu elule.
Kas teil on meile küsimus? Mainige neid selle blogi kommentaaride jaotises ja võtame teiega ühendust.