1

我有:

val = [{uid: '1', ignore: 'i1'}, {:uid: '2', ignore: 'i2'}]

现在我想将该:uid部分提取到一个数组中:

arr = []
val.each { |u| u.map { |k,v| arr << v if :uid == k } }

有没有更优雅/更短的方式来写最后两行?

4

1 回答 1

5

试试这个

val = [{uid: '1', ignore: 'i1'}, {uid: '2', ignore: 'i2'}]

arr = val.map { |u| u[:uid] }
于 2012-07-18T05:45:37.910 回答