Bagaimana Mengisih Tatasusunan Objek mengikut Atribut Menggunakan JQuery/JavaScript?

DDD
Lepaskan: 2024-10-23 10:51:02
asal
550 orang telah melayarinya

How to Sort Arrays of Objects by Attribute Using JQuery/JavaScript?

Mengisih Tatasusunan Objek dengan JQuery/JavaScript

Dalam JavaScript, anda mungkin menghadapi tatasusunan objek yang memerlukan pengisihan berdasarkan atribut tertentu. Untuk mengisih tatasusunan objek mengikut atribut tertentu, seperti "nama" dalam kes anda, ikut langkah berikut:

  1. Ekstrak Atribut: Buat fungsi pembantu yang mengekstrak atribut yang dikehendaki daripada setiap objek dalam tatasusunan. Dalam kes anda, ia akan menjadi function(objek) { return object.name; }.
  2. Tentukan Fungsi Perbandingan: Laksanakan fungsi perbandingan yang mengambil dua objek dan membandingkan atribut yang ditentukan. Untuk mengisih mengikut "nama" dalam susunan menaik, gunakan function(a, b) { return a.name.toLowerCase() - b.name.toLowerCase(); }.
  3. Gunakan Array.sort(): Gunakan kaedah sort() pada array dengan fungsi perbandingan yang disediakan sebagai parameter: array.sort(comparisonFunction);.

Contoh:

Pertimbangkan tatasusunan objek berikut:

<code class="javascript">var array = [
  { id: 1, name: "Alice", value: 10 },
  { id: 2, name: "Bob", value: 15 },
  { id: 3, name: "Carl", value: 5 }
];</code>
Salin selepas log masuk

Untuk mengisih tatasusunan mengikut "nama" dalam tertib menaik, gunakan fungsi berikut:

<code class="javascript">function SortByName(a, b) {
  var aName = a.name.toLowerCase();
  var bName = b.name.toLowerCase();
  return ((aName < bName) ? -1 : ((aName > bName) ? 1 : 0));
}</code>
Salin selepas log masuk

Gunakan pengisihan menggunakan:

<code class="javascript">array.sort(SortByName);</code>
Salin selepas log masuk

Tatasusunan yang terhasil akan diisih mengikut "nama" dalam tertib menaik:

<code class="javascript">[
  { id: 3, name: "Carl", value: 5 },
  { id: 1, name: "Alice", value: 10 },
  { id: 2, name: "Bob", value: 15 }
]</code>
Salin selepas log masuk

Berkenaan Soalan Pendua:

Nampaknya soalan itu sebelum ini ditutup sebagai pendua kerana dianggap serupa dengan soalan kemudian yang mendapat perhatian lebih. Walau bagaimanapun, soalan ini telah ditanya lebih awal dan tidak sepatutnya ditandakan sebagai pendua.

Atas ialah kandungan terperinci Bagaimana Mengisih Tatasusunan Objek mengikut Atribut Menggunakan JQuery/JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!