在ruby中排序JSON哈希数组

前端之家收集整理的这篇文章主要介绍了在ruby中排序JSON哈希数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我有一系列哈希:
[{"id":"30","name":"Dave"},{"id":"57","name":"Mike"},{"id":"9","name":"Kevin"},...
 {"id":"1","name":"Steve"}]

我想用id属性对它进行排序,所以它看起来像这样:

[{"id":"1","name":"Steve"},{"id":"2","name":"Walter"},...
 {"id":"60","name":"Chester"}]

我假设我使用sort_by方法,但我不确定如何做到这一点.

解决方法

这应该工作:
array.sort_by { |hash| hash['id'].to_i }

在这种情况下,sort_by优先​​于sort,因为它更有效.虽然sort对每次比较调用to_i,但sort_by会对数组中的每个元素执行一次并记住结果.

猜你在找的Ruby相关文章