JavaScriptový program na triedenie poľa objektov podľa hodnôt vlastností

V tomto príklade sa naučíte písať program JavaScript, ktorý zoradí pole objektov podľa hodnôt vlastností.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku JavaScript:

  • Zoradenie poľa JavaScript ()
  • Pole JavaScript
  • Objekty JavaScript

Príklad 1: Zoradenie poľa podľa názvu vlastnosti

 // program to sort array by property name function compareName(a, b) ( // converting to uppercase to have case-insensitive comparison const name1 = a.name.toUpperCase(); const name2 = b.name.toUpperCase(); let comparison = 0; if (name1> name2) ( comparison = 1; ) else if (name1 < name2) ( comparison = -1; ) return comparison; ) const students = ((name: 'Sara', age:24),(name: 'John', age:24), (name: 'Jack', age:25)); console.log(students.sort(compareName));

Výkon

 ((meno: „Jack“, vek: 25), (meno: „John“, vek: 24), (meno: „Sara“, vek: 24))

Vo vyššie uvedenom programe sa sort()metóda používa na triedenie poľa podľa vlastnosti name jeho objektových prvkov.

sort()Metóda triedi jeho prvky v súlade s hodnotami, ktoré boli vrátené vlastné radenie funkcií (compareName v tomto prípade).

Tu,

  • Názvy vlastností sa pomocou toUpperCase()metódy menia na veľké písmená .
  • Ak porovnanie dvoch mien vedie k 1 , potom sa zmení ich poradie.
  • Ak výsledkom porovnania dvoch mien bude hodnota -1 alebo 0 , potom sa ich poradie ponechá tak, ako je.

Príklad 2: Zoradenie poľa podľa veku vlastnosti

 // program to sort array by property name function compareAge(a, b) ( return a.age - b.age; ) const students = ((name: 'Sara', age:24),(name: 'John', age:22), (name: 'Jack', age:27)); console.log(students.sort(compareAge));

Výkon

 ((meno: „John“, vek: 22), (meno: „Sara“, vek: 24), (meno: „Jack“, vek: 27))

Vo vyššie uvedenom programe sa sort()metóda používa na triedenie prvku poľa podľa vlastnosti age.

Pre porovnanie vekovej vlastnosti dvoch objektov ich môžeme jednoducho odčítať.

  • Ak je ich rozdiel záporná hodnota, ich poradie sa zmení.
  • Ak je ich rozdiel kladná hodnota, poradie sa ponechá tak, ako je.

Zaujímavé články...