【问题标题】:Using underscore to sort nested objects in an array使用下划线对数组中的嵌套对象进行排序
【发布时间】:2015-12-30 20:40:04
【问题描述】:

考虑以下扩展对象:

现在这些对象中的每一个都存储在一个数组中,并且很容易按名称、电子邮件、created_at 或其他任何内容进行排序。但是,如果我想通过用户配置文件投资者类型来解决问题呢?在图像中,您可以:data.profile.data.investor_type 获取投资者类型。

如何使用下划线按对象中的嵌套属性对这些对象的数组进行排序?

【问题讨论】:

标签: javascript arrays sorting underscore.js


【解决方案1】:

您可以将_.sortBy 与您显示的确切代码一起使用

_.sortBy(data, function(obj) { return obj.profile.data.investor_type; });

如果你的环境支持ECMA Script 2015's Fat-arrow functions,那么你可以这样写

_.sortBy(data, (obj) => obj.profile.data.investor_type);

【讨论】:

  • 我有点迷茫,在这种情况下,如何按投资者类型对对象数组进行排序?
  • 对于数组中的每个元素,对应的investor_type用于比较。因此,对象数组将根据investor_type 进行排序。
  • 您绝对必须阅读 _.sortBy 函数,因为它按我指定的给定值对数组进行排序,在您的情况下为“profile.data.investor_type”。一个小提琴入口:jsfiddle.net/zobidafly/g45pereL
  • @zobidafly 你的意思是说这个解决方案行不通吗?
  • @thefourtheye :不,它有效,我只是添加了一条评论和一个链接以检查它是否有效......
猜你喜欢
  • 2016-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-01
  • 2016-05-25
  • 1970-01-01
  • 2015-12-18
相关资源
最近更新 更多