2017-10-24 5 views
-2

해시 배열을 분할하려고합니다. 모든 해시는 동일한 키를 가지고 있습니다.해시 배열 분할 방법

1 = [{"tid" => nil}, {"tid" => nil}, {"tid" => true}] 
2 = [{"tid" => nil}, {"tid" => true}] 
3 = [{"tid" => nil}, {"tid" => nil}, {"tid" => nil}, {"tid" => true}] 

이 코드의 작동을 얻으려고 : 나는 결과가 무엇을 의미하는지 단서가 없다

buyer_ids = specific_buyer.slice_after{ |obj| obj["tid"] != nil} 
# => #<Enumerator: #<Enumerator::Generator:0x007ffe9ea2f5b8>:each> 

예상되는 결과는 다음과 같습니다 뭔가 될 것입니다.

+2

그냥 buyer_ids''에'.to_a'를 호출하는지 확인 결과 수집에 메소드를 to_a를 추가하거나 전화 –

답변

2

맞습니다. 그냥

buyer_ids.slice_after { |obj| obj["tid"] != nil }.to_a 
buyer_ids.slice_after { |obj| obj["tid"] != nil }.each { |item| puts item }