15
Noob質問がここにあります!配列内のハッシュから特定の値を取得するruby rails
私はこのようになりますハッシュの配列があります。私はマップを使用してに見えたかのように選択
ids = [1,2]
:
arr = [{id: 1, name: "Pedro"},{id: 2, name: "Pablo"}]
と、このような配列を持ちたい
をids = arr.each.select{|k,v| "id"==k}
しかし、私はそれを理解することはできません。
それは動作します!!!おかげでトンのNiklas! – obi
'arr.map(&:[:id])'のようなものはどうしてうまくいかないのですか? – Noz
@ Cycle:いくつかの理由があります。最初の ':['はシンボルではありません。 '['は有効な識別子ではありません。第2に、正確な構文は 'method(arg1、arg2、...、&x)'なので、メソッドの引数と組み合わせて '&'トリックを使うことはできません。ここで、xは ' to_proc'メソッドを呼び出します。その 'to_proc'メソッドが呼び出され、結果の' Proc'オブジェクトが 'method'にブロックパラメータとして渡されます。 –