2011-02-06 95 views
7

我有以下散列:红宝石访问哈希元素

{"title"=>"ga:browser=Firefox", "dimensions"=>[{:browser=>"Firefox"}], "metrics"=>[{:pageviews=>25474}], "id"=>"http://www.google.com/analytics/feeds/data?ids=ga:3906565&amp;ga:browser=Firefox&amp;start-date=2010-02-06&amp;end-date=2011-02-06", "updated"=>#<DateTime: 212163710400001/86400000,-1/3,2299161>} 

如何将打印浏览量的价值?

回答

14

那么,你有一个hashmap(不是数组),它将密钥"metrics"映射到一个数组。该数组包含一个散列作为其唯一元素。并且该散列将密钥:pageviews映射到值25474。因此,要获得该值,你可以这样做:

the_hash["metrics"][0][:pageviews] 

这假定与:pageviews键的哈希总是会在数组,其中键"metrics"被映射到位置0。

+0

谢谢,有没有一种简单的方法来判断它是散列图还是数组?或者你可以告诉结构? – Tom 2011-02-06 00:29:07