如果我有

footnotes = { "apple" => "is a fruit", "cat" => "is an animal", "car" => "a transport"}

我怎样才能得到这些的索引?,类似于:
footnotes["cat"].index
# => 1

最佳答案

不需要首先检索密钥:

footnotes.find_index { |k,_| k== 'cat' } #=> 1

至于散列键值对是否有索引的问题(从v1.9开始),我只想指出ruby monks决定为我们提供Enumerable#find_index,当然这意味着Hash.instance_methods.include?(:find_index) #=> true

10-04 10:57