【问题标题】:Sort objects in objects, javascript对对象中的对象进行排序,javascript
【发布时间】:2017-10-20 15:35:10
【问题描述】:

我有一个包含对象的对象,其中包含对象。每个对象都有一个 ordernum。我想首先对具有最低 ordernum 的对象进行排序。

我在对数组进行排序时使用了下面的函数,但我需要帮助将其调整为这种结构。

function(a, b) {
return parseFloat(a.ordernum) - parseFloat(b.ordernum);
}

【问题讨论】:

  • 对象没有顺序,所以不确定您将如何对它们进行排序。
  • 不久前我刚刚访问了this question...为什么今天每个人都想对对象进行排序?虽然可以对具有某些限制的属性进行排序,但不应该这样做。
  • 考虑使用 lodash。您可以使用var obj = _.mapKeys(objects, (o) => o.sortField);,然后根据需要使用_.sortBy(obj, (o) => o.sortField) AND_.reverse(obj)
  • 看看这个关于对象排序的答案:Does JavaScript guarantee object property order

标签: javascript sorting object for-loop


【解决方案1】:

也许排序 + 转换为数组然后?:

const result =
 Object.values( yourobject )
  .sort((a,b)=> a.ordernum - b.ordernum );

【讨论】:

    猜你喜欢
    • 2018-08-18
    • 2011-10-04
    • 2018-03-18
    • 1970-01-01
    • 2021-08-19
    • 2019-01-08
    • 2011-05-12
    • 2013-07-15
    • 2011-11-16
    相关资源
    最近更新 更多