Program JavaScript untuk Menyortir Array Objek berdasarkan Nilai Properti

Dalam contoh ini, Anda akan belajar menulis program JavaScript yang akan mengurutkan array objek berdasarkan nilai properti.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman JavaScript berikut:

  • Javascript Array sort ()
  • Array JavaScript
  • Objek JavaScript

Contoh 1: Urutkan Array berdasarkan Nama Properti

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

Keluaran

 ((nama: "Jack", usia: 25), (nama: "John", usia: 24), (nama: "Sara", usia: 24))

Dalam program di atas, sort()metode ini digunakan untuk mengurutkan array berdasarkan properti nama elemen objeknya.

The sort()Metode macam unsur-unsurnya sesuai dengan nilai-nilai yang dikembalikan oleh fungsi semacam kustom (compareName dalam hal ini).

Sini,

  • Nama properti diubah menjadi huruf besar menggunakan toUpperCase()metode ini.
  • Jika membandingkan dua nama menghasilkan 1 , maka urutannya berubah.
  • Jika membandingkan dua nama menghasilkan -1 atau 0 , maka urutannya dibiarkan apa adanya.

Contoh 2: Urutkan Array berdasarkan Usia Properti

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

Keluaran

 ((nama: "John", usia: 22), (nama: "Sara", usia: 24), (nama: "Jack", usia: 27))

Dalam program di atas, sort()metode ini digunakan untuk mengurutkan elemen array berdasarkan properti usia.

Untuk membandingkan properti usia dua objek, kita cukup menguranginya.

  • Jika perbedaannya adalah nilai negatif, urutannya berubah.
  • Jika perbedaannya adalah nilai positif, urutannya dibiarkan apa adanya.

Artikel yang menarik...