首頁  >  文章  >  web前端  >  如何在 JavaScript 中按所有者和出版物名稱對多列數組進行排序?

如何在 JavaScript 中按所有者和出版物名稱對多列數組進行排序?

DDD
DDD原創
2024-11-01 01:29:28446瀏覽

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

JavaScript 中的自訂多列數組排序

基於多列對數組進行排序是程式設計中的常見任務。本問題探討如何在 JavaScript 中針對特定數組結構實現此目的。

所討論的數組是具有以下結構的多維數組:

[publicationID][publication_name][ownderID][owner_name]

目標是對數組進行排序首先按所有者名稱,然後按出版物名稱。

要對多個列進行排序,自訂排序函數需要考慮這兩個條件。以下程式碼示範如何修改提供的mysortfunction 以獲得所需的結果:

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;
}

在此函數中:

  • o1 和o2 轉換為小寫以進行不區分大小寫的比較
  • p1 和p2 被轉換為小寫,以便對Publication_name 進行不區分大小寫的比較。
  • 如果 Owner_name 值不同,函數將根據它們進行排序。
  • 如果owner_name值相同,函數將使用publication_name進行平局。

以上是如何在 JavaScript 中按所有者和出版物名稱對多列數組進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn