首页 >web前端 >js教程 >如何在 JavaScript 中按所有者和出版物名称对多列数组进行排序?

如何在 JavaScript 中按所有者和出版物名称对多列数组进行排序?

DDD
DDD原创
2024-11-01 01:29:28533浏览

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