shift
и unshift
действует аналогично pop
и push
: они предназначеныиспользовать массивы в качестве стеков, к которым вы можете добавлять и удалять элементы (обычно по одному за раз).Разница лишь в том, что shift
и unshift
добавляют / удаляют элементы в начале Array
, фактически смещают , используя все остальные элементы, тогда как pop
и push
добавляют / удаляют элементыв конце Array
, сохраняя индексы других элементов.
Примеры:
# Spacing for clarity:
a = [2, 4, 8] # a => [2, 4, 8]
a.push(16, 32) # a => [2, 4, 8, 16, 32]
a.unshift(0, 1) # a => [0, 1, 2, 4, 8, 16, 32]
a.shift # a => [1, 2, 4, 8, 16, 32]
a.pop # a => [1, 2, 4, 8, 16]