push- add an element to the beginning/end of an array
pop- remove and return the first/last element of an array
A simple diagram...
unshift -> array <- push shift <- array -> pop
add remove start end push X X pop X X unshift X X shift X X
Check out the MDN Array documentation. Virtually every language that has the ability to push/pop elements from an array will also have the ability to unshift/shift (sometimes called
pop_front) elements, you should never have to implement these yourself.
As pointed out in the comments, if you want to avoid mutating your original array, you can use
concat, which concatenates two or more arrays together. You can use this to functionally push a single element onto the front or back of an existing array; to do so, you need to turn the new element into a single element array:
const array = [ 3, 2, 1 ] const newFirstElement = 4 const newArray = [newFirstElement].concat(array) // [ 4, 3, 2, 1 ]
concat can also append items. The arguments to
concat can be of any type; they are implicitly wrapped in a single-element array, if they are not already an array:
const array = [ 3, 2, 1 ] const newLastElement = 0 // Both of these lines are equivalent: const newArray1 = array.concat(newLastElement) // [ 3, 2, 1, 0 ] const newArray2 = array.concat([newLastElement]) // [ 3, 2, 1, 0 ]