JavaScript program az objektumok tömbjének rendezése tulajdonságértékek szerint

Ebben a példában megtanul olyan JavaScript programot írni, amely objektumok tömbjét tulajdonságértékek szerint rendezi.

A példa megértéséhez ismernie kell a következő JavaScript programozási témákat:

  • JavaScript tömb rendezés ()
  • JavaScript tömb
  • JavaScript objektumok

1. példa: A tömb rendezése tulajdonságnév szerint

 // 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));

Kimenet

 ((név: "Jack", életkor: 25), (név: "John", életkor: 24), (név: "Sara", életkor: 24))

A fenti programban a sort()metódust egy tömb objektumelemeinek névtulajdonsága szerinti rendezésére használják.

A sort()módszer elemeit az egyedi rendezési függvény (ebben az esetben összehasonlítNév) által visszaadott értékek szerint rendezi.

Itt,

  • A tulajdonságnevek nagybetűsre változnak a toUpperCase()módszerrel.
  • Ha két név összehasonlítása 1-et eredményez , akkor azok sorrendje megváltozik.
  • Ha két név összehasonlítása -1 vagy 0 értéket eredményez , akkor a sorrendjük a jelenlegi marad.

2. példa: A tömb rendezése tulajdonkor szerint

 // 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));

Kimenet

 ((név: "John", életkor: 22), (név: "Sara", életkor: 24), (név: "Jack", életkor: 27))

A fenti programban a sort()metódust egy tömb elem rendezésére használják az age tulajdonság alapján.

Két objektum kor tulajdonságának összehasonlításához egyszerűen kivonhatjuk őket.

  • Ha különbségük negatív érték, akkor sorrendjük megváltozik.
  • Ha különbségük pozitív érték, akkor a sorrendet úgy hagyjuk, ahogy van.

érdekes cikkek...