web-dev-qa-db-de.com

Sammeln Sie Werte aus einem Array von Hashes

Ich habe eine Datenstruktur im folgenden Format:

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

Gibt es eine effiziente Möglichkeit, die Werte von :price als Array wie [1,2,3]?

53
Kert

Erstens, wenn Sie Ruby <1.9 verwenden:

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

Dann holen Sie sich, was Sie brauchen:

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