Bagaimana untuk Mengisih Susunan Berbilang Lajur dalam JavaScript mengikut Nama Pemilik dan Penerbitan?

DDD
Lepaskan: 2024-11-01 01:29:28
asal
503 orang telah melayarinya

How to Sort a Multi-Column Array in JavaScript by Owner and Publication Name?

Isih Tatasusunan Berbilang Lajur Tersuai dalam JavaScript

Isih tatasusunan berdasarkan berbilang lajur ialah tugas biasa dalam pengaturcaraan. Soalan ini meneroka cara untuk mencapai ini dalam JavaScript untuk struktur tatasusunan tertentu.

Tatasusunan yang dimaksudkan ialah tatasusunan berbilang dimensi dengan struktur berikut:

[publicationID][publication_name][ownderID][owner_name]
Salin selepas log masuk

Matlamatnya adalah untuk mengisih tatasusunan pertama dengan nama_pemilik dan kemudian dengan nama_publikasi.

Untuk mengisih pada berbilang lajur, fungsi isihan tersuai perlu mempertimbangkan kedua-dua kriteria. Kod berikut menunjukkan cara mengubah suai mysortfunction yang disediakan untuk mencapai hasil yang diingini:

function mysortfunction(a, b) {

  var o1 = a[3].toLowerCase();
  var o2 = b[3].toLowerCase();

  var p1 = a[1].toLowerCase();
  var p2 = b[1].toLowerCase();

  if (o1 < o2) return -1;
  if (o1 > o2) return 1;
  if (p1 < p2) return -1;
  if (p1 > p2) return 1;
  return 0;
}
Salin selepas log masuk

Dalam fungsi ini:

  • o1 dan o2 ditukar kepada huruf kecil untuk perbandingan tidak peka huruf besar-kecil nama_pemilik.
  • p1 dan p2 ditukar kepada huruf kecil untuk perbandingan tidak sensitif huruf besar bagi nama_penerbitan.
  • Jika nilai nama_pemilik adalah berbeza, fungsi diisih berdasarkan nilai tersebut.
  • Jika nilai owner_name adalah sama, fungsi menggunakan publication_name untuk pemecahan seri.

Atas ialah kandungan terperinci Bagaimana untuk Mengisih Susunan Berbilang Lajur dalam JavaScript mengikut Nama Pemilik dan Penerbitan?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan