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 tablicyfruitsod 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
slicejest używana do tworzenia nowej tablicy poprzez kopiowanie fragmentu oryginalnej tablicy. Nie modyfikuje ona oryginalnej tablicy. - Metoda
splicesł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.
