Kaedah splice
Kaedah splice menghapus atau menambah
elemen dalam array. Boleh hanya menghapus elemen,
hanya menambah elemen, atau melakukan kedua-duanya
serentak. Kaedah ini sangat serba boleh dan
kompleks untuk difahami.
Kaedah ini mengubah array itu sendiri dan mengembalikan
array elemen yang telah dihapus.
Parameter pertama kaedah menerima nombor elemen
array yang perlu dihapus. Parameter kedua
- berapa banyak elemen array yang patut dihapus.
Jika diletakkan pada 0 - maka elemen tidak akan
dihapus (hanya elemen baru ditambah).
Seterusnya, dipisahkan dengan koma, adalah elemen-elemen yang
perlu ditambah ke dalam array (merupakan parameter
pilihan). Elemen-elemen ini akan ditambah menggantikan
elemen array yang dihapus.
Jika tiada penghapusan berlaku (apabila parameter kedua
0) - elemen akan dimasukkan ke dalam array bermula
dari posisi yang ditentukan oleh parameter pertama
kaedah. Parameter pertama boleh mempunyai nilai negatif.
Dalam kes ini, kiraan posisi akan bermula
bukan dari awal array, tetapi dari akhir. Elemen terakhir
pada masa ini akan mempunyai nombor -1.
Sintaks
array.splice(dari mana menghapus, berapa banyak menghapus, [masukkan], [masukkan]...);
Contoh
Mari hapus tiga elemen, bermula dari yang pertama:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);
console.log(arr);
Keputusan pelaksanaan kod:
['a', 'e']
Contoh
Mari keluarkan array elemen yang dihapus:
let arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);
console.log(del);
Keputusan pelaksanaan kod:
['b', 'c', 'd']
Contoh
Mari pertama hapus elemen dengan nombor
2, kemudian sebagai gantinya masukkan
tiga elemen baru:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');
console.log(arr);
Keputusan pelaksanaan kod:
['a', 'b', '1', '2', '3', 'd', 'e']
Contoh
Sekarang mari tidak menghapus apa-apa, tetapi
pada posisi 2, masukkan tiga elemen
baru:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');
console.log(arr);
Keputusan pelaksanaan kod:
['a', 'b', '1', '2', '3', 'c', 'd', 'e']
Contoh . Nilai negatif
Mari hapus elemen kedua terakhir:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);
console.log(arr);
Keputusan pelaksanaan kod:
['a', 'b', 'c', 'e']