Bagaimanakah cara mengisih pelbagai objek mengikut nama pertama dalam JavaScript?

Barbara Streisand
Lepaskan: 2024-11-21 01:07:12
asal
732 orang telah melayarinya

How do I sort an array of objects by first name in JavaScript?

Mengisih Tatasusunan mengikut Nama Pertama dalam JavaScript

Dalam JavaScript, mengisih tatasusunan mengikut sifat tertentu memerlukan fungsi pengisihan. Kod ini menunjukkan cara mengisih tatasusunan mengikut sifat "nama pertama" dalam susunan abjad:

var userArray = [{
  firstname: "Anna",
  lastname: "Nickson",
  email: "user@example.com"
}, {
  firstname: "Bob",
  lastname: "Smith",
  email: "bob@example.com"
}, {
  firstname: "Carol",
  lastname: "Jones",
  email: "carol@example.com"
}];

// Sort the array by "firstname" using localeCompare
userArray.sort((a, b) => a.firstname.localeCompare(b.firstname));

console.log(userArray); // Output: [{firstname: "Anna", ..., {firstname: "Bob", ..., {firstname: "Carol", ...}
Salin selepas log masuk

Berikut ialah pecahan kod:

  • Array.sort( ) Kaedah: Kaedah ini membolehkan anda mengisih tatasusunan. Ia memerlukan fungsi isihan sebagai hujahnya.
  • Fungsi Isih (a, b) => a.firstname.localeCompare(b.firstname):

    • Fungsi anak panah membandingkan dua objek, a dan b, dan mengembalikan nilai negatif jika a.firstname kurang daripada b.firstname, nilai positif jika a.nama pertama lebih besar, atau 0 jika ia sama.
    • localeCompare() ialah kaedah rentetan yang membandingkan dua rentetan menggunakan tempat semasa. Ia memastikan susunan pengisihan yang betul untuk tempat yang berbeza.
  • Isih Tatasusunan: Kaedah isihan menggunakan fungsi isihan untuk setiap pasangan elemen dalam tatasusunan, dengan berkesan mengisih tatasusunan dengan "nama pertama" dalam susunan abjad.

Atas ialah kandungan terperinci Bagaimanakah cara mengisih pelbagai objek mengikut nama pertama dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan