Gunakan unshift
. Itu seperti push
, kecuali itu menambahkan elemen ke awal array bukan akhir.
unshift
/ push
- tambahkan elemen ke awal / akhir array
shift
/ pop
- hapus dan kembalikan elemen pertama / terakhir dari sebuah array
Diagram sederhana ...
unshift -> array <- push
shift <- array -> pop
dan bagan:
add remove start end
push X X
pop X X
unshift X X
shift X X
Lihatlah dokumentasi Array MDN . Sebenarnya setiap bahasa yang memiliki kemampuan untuk mendorong / memunculkan elemen dari sebuah array juga akan memiliki kemampuan untuk melepaskan / menggeser (kadang-kadang disebut push_front
/ pop_front
) elemen, Anda seharusnya tidak harus mengimplementasikannya sendiri.
Seperti yang ditunjukkan dalam komentar, jika Anda ingin menghindari mutasi array asli Anda, Anda dapat menggunakan concat
, yang menggabungkan dua array atau lebih secara bersamaan. Anda dapat menggunakan ini untuk secara fungsional mendorong elemen tunggal ke depan atau belakang array yang ada; untuk melakukannya, Anda perlu mengubah elemen baru menjadi array elemen tunggal:
const array = [ 3, 2, 1 ]
const newFirstElement = 4
const newArray = [newFirstElement].concat(array) // [ 4, 3, 2, 1 ]
concat
juga dapat menambahkan item. Argumen untuk concat
dapat dari jenis apa pun; mereka secara implisit dibungkus dalam array elemen tunggal, jika mereka belum menjadi 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 ]
push
pernyataan yang diikuti oleh panggilanreverse
, alih-alih meneleponunshift
sepanjang waktu.