web-dev-qa-db-fra.com

Recueillir des valeurs à partir d'un tableau de hachages

J'ai une structure de données au format suivant:

data_hash = [
    { price: 1, count: 3 },
    { price: 2, count: 3 },
    { price: 3, count: 3 }
  ]

Existe-t-il un moyen efficace d’obtenir les valeurs de :price comme un tableau comme [1,2,3]?

53
Kert

Tout d’abord, si vous utilisez Ruby <1.9:

array = [
    {:price => 1, :count => 3},
    {:price => 2, :count => 3},
    {:price => 3, :count => 3}
]

Ensuite, pour obtenir ce dont vous avez besoin:

array.map{|x| x[:price]}
104
Zabba