Loading:


JavaScript Funkcja slice (Metoda obiektu: Array)

Wydobywa fragment tablicy i zwraca go jako nową tablicę.


Metoda obiektu: Array


Składnia



slice(begin[,end])


Parametry



begin -Indeks (liczony od zera) od którego zaczyna się wydobywanie.
Jeżeli indeks jest ujemny, begin wskazuje przesunięcie w kolejności od końca. slice(-2) wydobywa kolejno drugi od końca i ostatni element tablicy.



end - Indeks (liczony od zera) przed którym kończy się wydobywanie. slice wydobywa elementy jednakże nie zawiera end.



slice(1,4) wydobywa elementy od drugiego do czwartego (o indeksach 1, 2 i 3).



Jeżeli parametr ten ma wartość ujemną to end określa odległość od końca tablicy. slice(2,-1) wydobywa kolejne elementy od trzeciego do przedostatniego.



Jeżeli end jest pominięty, slice wydobywa wszystkie elementy do końca tablicy.



Opis



slice nie zmienia zawartości oryginalnej tablicy, tylko zwraca nową kopię "o jednym poziomie głębokości" zawierającą elementy wyciągnięte z oryginalnej tablicy. Elementy oryginalnej tablicy są kopiowane do nowej tablicy następująco:


W przypadku referencji do obiektów (nie obiektów właściwych), slice kopiuje referencje do nowej tablicy. Obydwie - oryginalna i nowa tablica - odnoszą się do tego samego obiektu. Jeżeli zmienimy obiekt odniesienia, zmiany są widoczne dla obydwu tablic, nowej i oryginalnej.


Dla łańcuchów znaków i liczb (nie będących obiektami String i Number), slice kopiuje łańcuchy znaków i liczby do nowej tablicy. Zmiana łańcucha znaków lub liczby w jednej z tablic wpływa na wartość w drugiej.




Jeżeli nowy element jest dodany do jednej z tablic, to nie wpływa to w żaden sposób na drugą.




Przykłady



 

Przykład: Zastosowanie slice



W następującym przykładzie slice tworzy nową tablicę newCar z myCar. Obydwie zawierają odniesienie do obiektu myHonda. Kiedy kolor myHonda jest zmieniany na purpurowy, to obie tablice odzwierciedlają zmianę.


//Użycie slice, tworzenie newCar z myCar.

var myHonda = { color: "red", wheels: 4, engine: { cylinders: 4, size: 2.2 } };

var myCar = [myHonda, 2, "cherry condition", "purchased 1997"];

var newCar = myCar.slice(0, 2);



//Wpisz wartości myCar, newCar i color myHonda

//  referenced from both arrays.

print("myCar = " + myCar.toSource());

print("newCar = " + newCar.toSource());

print("myCar[0].color = " + myCar[0].color);

print("newCar[0].color = " + newCar[0].color);



//zmienia kolor myHonda.

myHonda.color = "purple";

print("Nowy kolor mojej Honda to " + myHonda.color);



//Wpisz color myHonda odnoszący się do oby tablic

print("myCar[0].color = " + myCar[0].color);

print("newCar[0].color = " + newCar[0].color);



Ten skrypt wypisze:


myCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2, "cherry condition", "purchased 1997"]

newCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2]

myCar[0].color = red

newCar[0].color = red

Nowym kolorem mojej Honda jest purpurowy

myCar[0].color = purple

newCar[0].color = purple

 



Napisz Artyku³

Listing

niema




Dodano przez: igor
Ranga: Administrator serwisu Punktów: 28716
Komentarze użytkowników
    • Tre¶æ komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2020 v.1.5 | design: diviXdesign & rainbowcolors