Visit Mozilla.org

Dokumentacja języka JavaScript 1.5:Obiekty:Array:splice

z Mozilla Developer Center, polskiego centrum programistów Mozilli.

Spis treści

[edytuj] Podsumowanie

Zmienia zawartość tablicy, dodając nowe elementy podczas usuwania starych elementów.

Metoda obiektu: Array
Zaimplementowana w: JavaScript 1.2, NES 3.0

JavaScript 1.3: zwraca tablicę zawierającą usunięte elementy.

Wersja ECMA: ECMA-262 Edycja 3

[edytuj] Składnia

splice(index, howMany, [element1][, ..., elementN])
splice(index, [howMany, [element1][, ..., elementN]]) (rozszerzenie SpiderMonkey)

[edytuj] Parametry

index 
Indeks od którego rozpoczynamy modyfikację tablicy.
howMany 
Liczba całkowita określająca liczbę starych elementów tablicy do usunięcia. Jeżeli howMany wynosi 0, nic nie zostanie usunięte. W tym przypadku należy podać co najmniej jeden nowy element. W przypadku gdy parametr howMany nie został podany (druga forma sładni podana powyżej, która jest rozszerzeniem SpiderMonkey), wszystkie elementy o indeksach wyższych niż index są usuwane.
element1, ..., elementN 
Elementy dodawane do tablicy. Jeżeli nie określimy żadnych elementów, splice usunie tylko podaną liczbę elementów.

[edytuj] Opis

Jeżeli podamy różną liczbę wstawianych elementów od liczby usuwanych elementów, tablica będzie posiadała inną długość po wywołaniu metody splice.

Metoda splice zwraca tablicę zawierającą usunięte elementy. Jeżeli usunięty został tylko jeden element, zwracana jest tablica jednoelementowa.

[edytuj] Zgodność wsteczna

[edytuj] JavaScript 1.2

Metoda splice zwraca usunięty element, jeśli został usunięty tylko jeden element (parametr howMany wynosi 1); W przeciwnym razie, metoda zwróca tablicę zawierającą usunięte elementy.

[edytuj] Przykłady

[edytuj] Przykład: Zastosowanie splice

Następujący skrypt ilustruje użycie splice:

<SCRIPT LANGUAGE="JavaScript1.2">

myFish = ["anioł", "klaun", "mandarynka", "chirurg"];
document.writeln("myFish: " + myFish + "<BR>");

removed = myFish.splice(2, 0, "bęben");
document.writeln("Po dodaniu 1: " + myFish);
document.writeln("Usunięty jest: " + removed + "<BR>");

removed = myFish.splice(3, 1)
document.writeln("Po usunięciu 1: " + myFish);
document.writeln("Usunięty jest: " + removed + "<BR>");

removed = myFish.splice(2, 1, "trąba")
document.writeln("Po zastąpieniu 1: " + myFish);
document.writeln("Usunięty jest: " + removed + "<BR>");

removed = myFish.splice(0, 2, "papuga", "zawilec", "niebieski")
document.writeln("Po zastąpieniu 2: " + myFish);
document.writeln("Usunięty jest: " + removed);

</SCRIPT>

Ten skrypt wyświetli:

myFish: ["anioł", "klaun", "mandarynka", "chirurg"]

Po dodaniu 1: ["anioł", "klaun", "bęben", "mandarynka", "chirurg"]
Usunięty jest: undefined

Po usunięciu 1: ["anioł", "klaun", "bęben, "chirurg"]
Usunięty jest: mandarynka

Po zastąpieniu 1: ["anioł", "klaun", "trąba", "chirurg"]
Usunięty jest: bęben

Po zastąpieniu 2: ["papuga", "zawilec", "niebieski", "trąba", "chirurg"]
Usunięty jest: ["anioł", "klaun"]