Šajā piemērā jūs iemācīsities rakstīt JavaScript programmu, kas kārtos objektu masīvu pēc rekvizītu vērtībām.
Lai saprastu šo piemēru, jums jāpārzina šādas JavaScript programmēšanas tēmas:
- JavaScript masīva kārtošana ()
- JavaScript masīvs
- JavaScript objekti
1. piemērs: Kārtojiet masīvu pēc īpašuma nosaukuma
// 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));
Rezultāts
((vārds: "Džeks", vecums: 25), (vārds: "Džons", vecums: 24), (vārds: "Sāra", vecums: 24))
Iepriekš minētajā programmā sort()metodi izmanto, lai kārtotu masīvu pēc tā objekta elementu rekvizīta nosaukuma.
sort()Metode sakārto savus elementus saskaņā ar atgriezto vērtību ar pasūtījuma šķirošanas funkcija (compareName šajā gadījumā).
Šeit,
- Izmantojot
toUpperCase()metodi, rekvizītu nosaukumi tiek mainīti uz lielajiem burtiem . - Ja salīdzinot divus nosaukumus, tiek iegūts rezultāts 1 , tad to secība tiek mainīta.
- Ja salīdzinot divus nosaukumus, tiek iegūts -1 vai 0 , tad to secība tiek atstāta tāda, kāda tā ir.
2. piemērs: Kārtot masīvu pēc īpašuma vecuma
// 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));
Rezultāts
((vārds: "Jānis", vecums: 22), (vārds: "Sara", vecums: 24), (vārds: "Džeks", vecums: 27))
Iepriekš minētajā programmā sort()metodi izmanto, lai kārtotu masīva elementu pēc vecuma rekvizīta.
Lai salīdzinātu divu objektu vecuma īpašības, mēs tos varam vienkārši atņemt.
- Ja to starpība ir negatīva vērtība, to secība tiek mainīta.
- Ja to starpība ir pozitīva vērtība, pasūtījums tiek atstāts tāds, kāds tas ir.








