Metody slice
i splice
są dwoma popularnymi funkcjami w języku JavaScript, które pozwalają na manipulowanie tablicami. Chociaż nazwy tych metod są do siebie bardzo podobne, służą do zupełnie innych celów. Slice
jest używany do tworzenia nowej tablicy poprzez wyodrębnienie części oryginalnej tablicy, nie modyfikując jej. Natomiast splice
służy do dodawania lub usuwania elementów z tablicy, co bezpośrednio modyfikuje oryginalną tablicę.
Przykład użycia slice
i splice
w JavaScript
W tym przykładzie pokażemy, jak obie metody działają na praktycznym przykładzie.
Przykład
// Przykładowa tablica
let fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
// Użycie metody slice
let citrus = fruits.slice(1, 3);
// Wyświetlanie wyników
console.log("Oryginalna tablica: ", fruits);
console.log("Tablica po użyciu slice: ", citrus);
// Użycie metody splice
let removed = fruits.splice(2, 1, "Pineapple", "Cherry");
// Wyświetlanie wyników
console.log("Oryginalna tablica po użyciu splice: ", fruits);
console.log("Usunięte elementy: ", removed);
W tym kodzie:
- Metoda
slice(1, 3)
tworzy nową tablicęcitrus
, zawierającą elementy z oryginalnej tablicyfruits
od indeksu 1 do 2 (bez indeksu 3). Oryginalna tablica pozostaje niezmieniona. - Metoda
splice(2, 1, "Pineapple", "Cherry")
modyfikuje oryginalną tablicęfruits
, usuwając jeden element od indeksu 2 (usunięty element to “Lemon”) i wstawiając na jego miejsce “Pineapple” i “Cherry”. Metoda ta zwraca tablicę zawierającą usunięte elementy.
Podsumowanie
- Metoda
slice
jest używana do tworzenia nowej tablicy poprzez kopiowanie fragmentu oryginalnej tablicy. Nie modyfikuje ona oryginalnej tablicy. - Metoda
splice
służy do dodawania lub usuwania elementów z tablicy, co zmienia oryginalną tablicę. Może także zwrócić tablicę zawierającą usunięte elementy.
Rozumienie różnic między slice
i splice
jest kluczowe dla efektywnego manipulowania tablicami w JavaScript. Wybór odpowiedniej metody zależy od potrzeb konkretnego przypadku użycia, takich jak potrzeba modyfikacji oryginalnej tablicy lub utworzenia nowej tablicy na podstawie istniejącej.