【问题标题】:Sort object with multiple array对具有多个数组的对象进行排序
【发布时间】:2016-05-11 09:03:19
【问题描述】:

是否可以对具有多个数组的对象进行排序?

例子:

{
 'Michael Schmidt':["Michael Schmidt", "..."],
 'Hans Mustermann': ["Hans Mustermann", "..."],
 'Anton Mustermann': ["Anton Mustermann", "..."]
}

我找到了很多如何对对象数组进行排序的解决方案,但对我的问题一无所知。

问候

解决方案:

  var keys = Object.keys(users),
  len = keys.length;
  keys.sort();
 for (var i = 0; i < len; i++) {
   var k = keys[i];
 }

【问题讨论】:

  • 这是无效的 Javascript。你可能有一个数组而不是一个对象(名称应该是字符串)?
  • 请添加有效的数据结构和想要的排序结果。
  • 抱歉,忘记添加密钥了:D
  • 您需要解释应该对什么进行排序(以及按照什么标准)。

标签: javascript arrays sorting object


【解决方案1】:

对象内部没有顺序的概念,因此您无法对它们进行排序。数组可以,您可以简单地使用比较器函数对数组进行排序:array.sort([compareFunction])。

也许您正在寻找 JavaScript 中的排序地图实现,在这种情况下,您需要使用自己的解决方案(或其他人的实现),因为普通对象不适合这样做。

【讨论】:

  • 我找到了一个简单的解决方案: var keys = Object.keys(users), len = keys.length;键.sort(); for (var i = 0; i
猜你喜欢
  • 2016-04-15
  • 2021-02-15
  • 1970-01-01
  • 2021-05-19
  • 2017-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
相关资源
最近更新 更多