Cara menggunakan SPLICE.COM pada JavaScript

Cara menggunakan SPLICE.COM pada JavaScript


Apa perbedaan antara splicedan slice?

$scope.participantForms.splice(index, 1);
$scope.participantForms.slice(index, 1);




Jawaban:


splice()mengubah array asli sedangkan slice()tidak tetapi keduanya mengembalikan objek array.

Lihat contoh di bawah ini:

var array=[1,2,3,4,5];
console.log(array.splice(2));

Ini akan kembali [3,4,5]. The array asli dipengaruhi mengakibatkan arraymenjadi [1,2].

var array=[1,2,3,4,5]
console.log(array.slice(2));

Ini akan kembali [3,4,5]. The array asli TIDAK terpengaruh dengan menghasilkan arraymenjadi [1,2,3,4,5].

Di bawah ini adalah biola sederhana yang menegaskan hal ini:

//splice
var array=[1,2,3,4,5];
console.log(array.splice(2));

//slice
var array2=[1,2,3,4,5]
console.log(array2.slice(2));


console.log("----after-----");
console.log(array);
console.log(array2);





Splice dan Slice keduanya adalah fungsi Javascript Array.

Splice vs Slice

  1. Metode splice () mengembalikan item yang dihapus dalam array dan metode slice () mengembalikan elemen yang dipilih dalam array, sebagai objek array baru.

  2. Metode splice () mengubah array asli dan metode slice () tidak mengubah array asli.

  3. Metode splice () dapat mengambil n jumlah argumen dan metode slice () membutuhkan 2 argumen.

Sambatan dengan Contoh

Argumen 1: Indeks, Diperlukan. Bilangan bulat yang menentukan pada posisi apa untuk menambah / menghapus item, Gunakan nilai negatif untuk menentukan posisi dari akhir array.

Argumen 2: Opsional. Jumlah item yang akan dihapus. Jika diatur ke 0 (nol), tidak ada item yang akan dihapus. Dan jika tidak lulus, semua item dari indeks yang disediakan akan dihapus.

Argumen 3 ... n: Opsional. Item baru yang akan ditambahkan ke array.

var array=[1,2,3,4,5];
console.log(array.splice(2));
// shows [3, 4, 5], returned removed item(s) as a new array object.
 
console.log(array);
// shows [1, 2], original array altered.
 
var array2=[6,7,8,9,0];
console.log(array2.splice(2,1));
// shows [8]
 
console.log(array2.splice(2,0));
//shows [] , as no item(s) removed.
 
console.log(array2);
// shows [6,7,9,0]

Iris dengan Contoh

Argumen 1: Diperlukan. Integer yang menentukan tempat untuk memulai pemilihan (Elemen pertama memiliki indeks 0). Gunakan angka negatif untuk memilih dari akhir array.

Argumen 2: Opsional. Integer yang menentukan tempat untuk mengakhiri pemilihan tetapi tidak termasuk. Jika dihilangkan, semua elemen dari posisi awal dan ke akhir array akan dipilih. Gunakan angka negatif untuk memilih dari akhir array.

var array=[1,2,3,4,5]
console.log(array.slice(2));
// shows [3, 4, 5], returned selected element(s).
 
console.log(array.slice(-2));
// shows [4, 5], returned selected element(s).
console.log(array);
// shows [1, 2, 3, 4, 5], original array remains intact.
 
var array2=[6,7,8,9,0];
console.log(array2.slice(2,4));
// shows [8, 9]
 
console.log(array2.slice(-2,4));
// shows [9]
 
console.log(array2.slice(-3,-1));
// shows [8, 9]
 
console.log(array2);
// shows [6, 7, 8, 9, 0]




Metode slice () mengembalikan salinan sebagian array ke objek array baru.

$scope.participantForms.slice(index, 1);

Ini TIDAK mengubah participantFormsarray tetapi mengembalikan array baru yang mengandung elemen tunggal yang ditemukan di indexposisi dalam array asli.

Metode splice () mengubah konten array dengan menghapus elemen yang ada dan / atau menambahkan elemen baru.

$scope.participantForms.splice(index, 1);

Ini akan menghapus satu elemen dari participantFormsarray di indexposisi.

Ini adalah fungsi asli Javascript, AngularJS tidak ada hubungannya dengan mereka.





Berikut ini adalah trik sederhana untuk mengingat perbedaan antara slicevssplice

var a=['j','u','r','g','e','n'];

// array.slice(startIndex, endIndex)
a.slice(2,3);
// => ["r"]

//array.splice(startIndex, deleteCount)
a.splice(2,3);
// => ["r","g","e"]

Trick to remember:

Anggap "spl" (first 3 letters of splice)sebagai kependekan dari "panjang spesifik", bahwa argumen kedua harus panjang bukan indeks




Sambungan - Referensi MDN - ECMA-262 spec

Sintaksis
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])

Parameter

  • start: yg dibutuhkan. Indeks awal.
    Jika startnegatif, maka diperlakukan "Math.max((array.length + start), 0)"sesuai spek (contoh yang disediakan di bawah) secara efektif dari akhir array.
  • deleteCount: pilihan. Jumlah elemen yang akan dihapus (semua dari startjika tidak disediakan).
  • item1, item2, ...: pilihan. Elemen yang akan ditambahkan ke array dari startindeks.

Pengembalian : Array dengan elemen yang dihapus (array kosong jika tidak ada yang dihapus)

Mutasi array asli : Ya

Contoh:

const array = [1,2,3,4,5];

// Remove first element
console.log('Elements deleted:', array.splice(0, 1), 'mutated array:', array);
// Elements deleted: [ 1 ] mutated array: [ 2, 3, 4, 5 ]

// array = [ 2, 3, 4, 5]
// Remove last element (start -> array.length+start = 3)
console.log('Elements deleted:', array.splice(-1, 1), 'mutated array:', array);
// Elements deleted: [ 5 ] mutated array: [ 2, 3, 4 ]

Lebih banyak contoh dalam contoh MDN Splice


Slice - Referensi MDN - ECMA-262 spec

Parameter Sintaks
array.slice([begin[, end]])

  • begin: pilihan. Indeks awal (default 0).
    Jika beginnegatif, maka diperlakukan "Math.max((array.length + begin), 0)"sesuai spek (contoh yang disediakan di bawah) secara efektif dari akhir array.
  • end: pilihan. Indeks terakhir untuk ekstraksi tetapi tidak termasuk (default array.length). Jika endnegatif, maka diperlakukan "Math.max((array.length + begin),0)"sesuai spek (contoh yang disediakan di bawah) secara efektif dari akhir array.

Pengembalian : Array yang mengandung elemen yang diekstraksi.

Bermutasi asli : Tidak

Contoh:

const array = [1,2,3,4,5];

// Extract first element
console.log('Elements extracted:', array.slice(0, 1), 'array:', array);
// Elements extracted: [ 1 ] array: [ 1, 2, 3, 4, 5 ]

// Extract last element (start -> array.length+start = 4)
console.log('Elements extracted:', array.slice(-1), 'array:', array);
// Elements extracted: [ 5 ] array: [ 1, 2, 3, 4, 5 ]

Contoh lainnya dalam contoh MDN Slice

Perbandingan kinerja

Jangan menganggap ini sebagai kebenaran absolut karena tergantung pada masing-masing skenario yang satu mungkin lebih baik daripada yang lain.
Uji kinerja


Splice dan Slice adalah perintah Javascript bawaan - bukan perintah khusus AngularJS. Slice mengembalikan elemen array dari "start" hingga tepat sebelum specifier "akhir". Splice mengubah array aktual, dan mulai pada "awal" dan mempertahankan jumlah elemen yang ditentukan. Google memiliki banyak info tentang ini, cukup cari.




The splice()Metode mengembalikan item yang dihapus dalam array. The slice()kembali metode elemen yang dipilih (s) dalam array, sebagai objek array baru.

The splice()Metode mengubah array asli dan slice()metode tidak mengubah array asli.

  • Splice() metode dapat mengambil n sejumlah argumen:

    Argumen 1: Indeks, Diperlukan.

    Argumen 2: Opsional. Jumlah item yang akan dihapus. Jika diatur ke 0 (nol), tidak ada item yang akan dihapus. Dan jika tidak lulus, semua item dari indeks yang disediakan akan dihapus.

    Argumen 3..n: Opsional. Item baru yang akan ditambahkan ke array.

  • slice() metode dapat mengambil 2 argumen:

    Argumen 1: Diperlukan. Integer yang menentukan tempat untuk memulai pemilihan (Elemen pertama memiliki indeks 0). Gunakan angka negatif untuk memilih dari akhir array.

    Argumen 2: Opsional. Integer yang menentukan tempat untuk mengakhiri seleksi. Jika dihilangkan, semua elemen dari posisi awal dan ke akhir array akan dipilih. Gunakan angka negatif untuk memilih dari akhir array.


splice & hapus item Array dengan indeks

indeks = 2

//splice & will modify the origin array
const arr1 = [1,2,3,4,5];
//slice & won't modify the origin array
const arr2 = [1,2,3,4,5]

console.log("----before-----");
console.log(arr1.splice(2, 1));
console.log(arr2.slice(2, 1));

console.log("----after-----");
console.log(arr1);
console.log(arr2);

let log = console.log;

//splice & will modify the origin array
const arr1 = [1,2,3,4,5];

//slice & won't modify the origin array
const arr2 = [1,2,3,4,5]

log("----before-----");
log(arr1.splice(2, 1));
log(arr2.slice(2, 1));

log("----after-----");
log(arr1);
log(arr2);

Cara menggunakan SPLICE.COM pada JavaScript


Contoh lain:

[2,4,8].splice(1, 2) -> returns [4, 8], original array is [2]

[2,4,8].slice(1, 2) -> returns 4, original array is [2,4,8]


slice tidak mengubah array asli, tetapi mengembalikan array baru, tetapi splice mengubah array asli.

example: var arr = [1,2,3,4,5,6,7,8];
         arr.slice(1,3); // output [2,3] and original array remain same.
         arr.splice(1,3); // output [2,3,4] and original array changed to [1,5,6,7,8].

Metode splice argumen kedua berbeda dengan metode slice. Argumen kedua dalam splice mewakili jumlah elemen yang akan dihapus dan dalam slice itu mewakili indeks akhir.

arr.splice(-3,-1); // output [] second argument value should be greater then 
0.
arr.splice(-3,-1); // output [6,7] index in minus represent start from last.

-1 mewakili elemen terakhir sehingga mulai dari -3 hingga -1. Di atas adalah perbedaan utama antara metode splice dan slice.


//splice
var array=[1,2,3,4,5];
console.log(array.splice(2));

//slice
var array2=[1,2,3,4,5]
console.log(array2.slice(2));


console.log("----after-----");
console.log(array);
console.log(array2);



Perbedaan antara fungsi build-in javascript Slice () dan Splice () adalah, Slice mengembalikan item yang dihapus tetapi tidak mengubah array asli; Suka,

        // (original Array)
        let array=[1,2,3,4,5] 
        let index= array.indexOf(4)
         // index=3
        let result=array.slice(index)
        // result=4  
        // after slicing=>  array =[1,2,3,4,5]  (same as original array)

tetapi dalam kasus splice () itu mempengaruhi array asli; Suka,

         // (original Array)
        let array=[1,2,3,4,5] 
        let index= array.indexOf(4)
         // index=3
        let result=array.splice(index)
        // result=4  
        // after splicing array =[1,2,3,5]  (splicing affects original array)


JavaScript Array splice () Metode Dengan Contoh

Contoh2 oleh tutsmake -Hapus 2 elemen dari indeks 1

  var arr = [ "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" ]; 

 arr.splice(1,2);

 console.log( arr ); 

Example-2 By tutsmake - Tambahkan elemen baru dari indeks 0 JavaScript

  var arr = [ "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" ]; 

 arr.splice(0,0,"zero");

 console.log( arr );  

Contoh-3 oleh tutsmake - Tambahkan dan Hapus Elemen di JavaScript Array

var months = ['Jan', 'March', 'April', 'June'];

months.splice(1, 0, 'Feb'); // add at index 1

console.log(months); 

months.splice(4, 1, 'May'); // replaces 1 element at index 4

console.log(months);

https://www.tutsmake.com/javascript-array-splice-method-by-example/

Apa itu splice pada JavaScript?

splice() merupakan method array di JavaScript yang berfungsi untuk mengubah elemen array termasuk menghapus, mengganti, atau menambah elemen baru. Method ini mengubah array asli dan mengembalikan array berisi elemen yang dihapus.

Apa itu array splice?

Method Objek Array: Array.splice() Method splice() adalah method 'serba-bisa' yang bisa digunakan untuk memotong array, menambahkan elemen array, bahkan melakukan keduanya sekaligus. Tidak seperti method slice() dan concat(), pemanggilan method ini akan mengubah array asal.

Apa itu method di JavaScript?

Method JavaScript adalah tindakan yang dapat dilakukan pada objek. Method JavaScript adalah properti yang berisi definisi fungsi. Metohd adalah fungsi yang disimpan sebagai properti objek.

Method yang dipergunakan untuk mengecek apakah sebuah data ada pada array atau tidak adalah?

4. includes() Metode ini berfungsi untuk mengecek apakah pada elemen array memenuhi suatu kondisi atau tidak.