Skip to content

End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

instance method

Array#drop_while

array.drop_while {|element| ... } → new_array
array.drop_while → new_enumerator

Returns a new Array containing zero or more trailing elements of self; does not modify self.

With a block given, calls the block with each successive element of self; stops if the block returns false or nil; returns a new Array omitting those elements for which the block returned a truthy value:

Example
a = [0, 1, 2, 3, 4, 5]
a.drop_while {|element| element < 3 } # => [3, 4, 5]

With no block given, returns a new Enumerator:

Example
[0, 1].drop_while # => # => #<Enumerator: [0, 1]:drop_while>

Ruby version changes

  1. 3.0
See also #drop #each #dig #each_index also in 4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.1