Metoda JavaScript Array splice () zwraca tablicę, zmieniając (dodając / usuwając) jej elementy w miejscu.
Składnia splice()
metody to:
arr.splice(start, deleteCount, item1,… , itemN)
Tutaj arr jest tablicą.
splice () Parametry
splice()
Sposób odbywa się:
- start - indeks, z którego zmienia się tablica.
- deleteCount (opcjonalnie) - liczba elementów do usunięcia
start
. - item1,…, itemN (opcjonalne) - elementy do dodania do
start
indeksu. Jeśli niesplice()
zostanie określony, usunie tylko elementy z tablicy.
Wartość zwracana ze splice ()
- Zwraca tablicę zawierającą usunięte elementy.
Uwaga:splice()
metoda zmienia oryginalnej tablicy.
Przykład 1: użycie metody splice ()
let languages = ("JavaScript", "Python", "Java", "Lua"); // replacing "Java" & "Lua" with "C" & "C++" let removed = languages.splice(2, 2, "C", "C++"); console.log(removed); // ( 'Java', 'Lua' ) console.log(languages); // ( 'JavaScript', 'Python', 'C', 'C++' ) // adding elements without deleting existing elements let removed1 = languages.splice(1, 0, "Java", "Lua"); console.log(removed1); // () console.log(languages); // ( 'JavaScript', 'Java', 'Lua', 'Python', 'C', 'C++' ) // removing 3 elements let removed2 = languages.splice(2, 3); console.log(removed2); // ( 'Lua', 'Python', 'C' ) console.log(languages); // ( 'JavaScript', 'Java', 'C++' )
Wynik
(„Java”, „Lua”) („JavaScript”, „Python”, „C”, „C ++”) () („JavaScript”, „Java”, „Lua”, „Python”, „C”, „ C ++ ”) („ Lua ”,„ Python ”,„ C ”) („ JavaScript ”,„ Java ”,„ C ++ ”)
Przykład 2: Używanie metody splice () dla różnych wartości deleteCount
- Jeśli start> array.length ,
splice()
nie usuwa niczego i rozpoczyna dołączanie argumentów na końcu tablicy. - Jeśli start <0 , indeks jest liczony od tyłu ( tablica.length + start ). Na przykład -1 jest ostatnim elementem.
- Jeśli array.length + start <0 , rozpocznie się od indeksu 0 .
let languages = ("JavaScript", "Python", "Java", "Lua"); // does not removes, only appends to the end let removed = languages.splice(5, 2, "C++"); console.log(removed); // () console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "C++") // remove last element and add 3 more elements let removed1 = languages.splice(-1, 1, "Swift", "Scala", "Go"); console.log(removed1); // ( "C++" ) console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "Swift", "Scala", "Go")
Wynik
() („JavaScript”, „Python”, „Java”, „Lua”, „C ++”) ('C ++') („JavaScript”, „Python”, „Java”, „Lua”, „Swift”, „ Scala ”,„ Go ”)
Przykład 3: Używanie splice () dla różnych wartości początkowych
- Jeśli parametr deleteCount zostanie pominięty lub jest większy niż liczba elementów pozostałych w tablicy, usuwa wszystkie elementy od początku do końca tablicy.
- Jeśli parametr deleteCount ma wartość 0 lub wartość ujemną , żadne elementy nie są usuwane. Należy jednak określić co najmniej jeden nowy element.
let languages = ("JavaScript", "Python", "Java", "Lua"); // removes everything from start let removed = languages.splice(1); console.log(removed); // ( "Python", "Java", "Lua" ) console.log(languages); // ( "JavaScript" ) // remove none & add 3 more element let removed1 = languages.splice(1, -2, "Swift", "Scala", "Go"); console.log(removed1); // ( ) console.log(languages); // ( "JavaScript", "Swift", "Scala", "Go" )
Wynik
(„Python”, „Java”, „Lua”) („JavaScript”) () („JavaScript”, „Swift”, „Scala”, „Idź”)
Zalecane lektury:
- JavaScript Array.pop ()
- JavaScript Array.push ()