Method: Array#chunk
- Defined in:
- lib/rext/array/helpers.rb
#chunk(n, pad_with = nil, &block) ⇒ Object Also known as: in_groups_of
Split an array into chunks of length n. Optionally you may pad_with an object to retain a uniform length per chunk.
Examples
[1,2,3].chunk(2) # => [[1,2], [3, nil]]
[1,2,3].chunk(2, 'x') # => [[1,2], [3, 'x']]
[1,2,3].chunk(2, false) # => [[1,2], [3]]
[1,2,3].in_groups_of(2) do |chunk|
# Do something
end
See
-
Array#pad
69 70 71 72 73 74 75 76 77 |
# File 'lib/rext/array/helpers.rb', line 69 def chunk n, pad_with = nil, &block returning [] do |chunks| each_slice n do |chunk| chunk.pad n, pad_with unless pad_with == false yield chunk if block chunks << chunk end end end |