Goa*_*lie 1 ruby ruby-on-rails
我想B_array基于现有的阵列A 创建一个新阵列A_array.如果该项目A_array具有某个字段,则将其添加到其中B_array.
目前这就是我所拥有的,它将所有内容放入B_array:
B_array = A_array.map {|item| if item.name == 'Josh'}
Run Code Online (Sandbox Code Playgroud)
A_array:
[id:0,name:"Josh",email:"josh@josh@gmail.com"],
[id:1,name:"Scott",email:"scott@josh@gmail.com"],
[id:2,name:"Josh",email:"dan@josh@gmail.com"]
Run Code Online (Sandbox Code Playgroud)
期望的输出B_array:
[id:0,name:"Josh",email:"josh@josh@gmail.com"],
[id:2,name:"Josh",email:"dan@josh@gmail.com"]
Run Code Online (Sandbox Code Playgroud)
谢谢!
用途.select:
a = [{id:0,name:"Josh",email:"josh@josh@gmail.com"},
id:1,name:"Scott",email:"scott@josh@gmail.com"}]
b = a.select { |i| i[:name] == 'Josh' }
Run Code Online (Sandbox Code Playgroud)
.select 将根据您提供的条件进行过滤,并返回通过测试的元素数组.