This translation is in progress.

Metoda splice() modifică conținutul unui array prin eliminarea elementelor deja existente și/sau adăugarea de elemente noi.

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];

myFish.splice(2, 0, 'drum'); // inserează 'drum' pe poziția cu indexul 2
// myFish este ["angel", "clown", "drum", "mandarin", "sturgeon"]

myFish.splice(2, 1); // elimină 1 element de pe poziția cu indexul 2 (elementul "drum")
// myFish este ["angel", "clown", "mandarin", "sturgeon"]

Sintaxă

array.splice(start)
array.splice(start, deleteCount)
array.splice(start, deleteCount, item1, item2, ...)

Parametri

start
Indexul de la care se începe modificarea array-ului (pornește de la 0).  Dacă este mai mare decât lungimea array-ului, valoarea asignată parametrului va fi lungimea array-ului. Dacă se atribuie o valoare negativă atunci maniera de calcul a indexului va fi de la capăt spre început (ultimul element având indexul -1) și pentru cazul în care valoarea absolută a numărului negativ este mai mare decât lungimea array-ului se va atribui automat valoarea 0.
deleteCount Optional
Un integer ce indică numărul elementelor ce urmează a fi eliminate.
Dacă deleteCount e omis, sau dacă valoarea sa este mai mare decât array.length - start (adică numărul de elemente rămase în array, începând de la start, este mai mic decât valoarea parametrului), atunci toate elementele de la start până la capătul array-ului vor fi eliminate.
Dacă deleteCount este 0 sau negativ, nici un element nu va fi eliminat. În acest caz se recomandă specificarea măcar a unui nou element (vezi mai jos).
item1, item2, ... Optional
Elementele ce urmează a fi adăugate în array, începând de la indexul start. Dacă nu se specifică elemente de adăugat, splice() va efectua doar eliminarea elementelor din array.

Valoarea returnată

Un array format din elementele eliminate. Dacă doar un element a fost șters, un array cu un singur element va fi returnat. Dacă nu se elimină nici un element, un array gol va fi returnat.

Descriere

Dacă se specifică un număr de elemente de adăugat, diferit de numărul celor de eliminat, array-ul va avea o lungime diferită la sfârșitul apelului.

Exemple

Elimină 0 elemente de la indexul 2, și adaugă "drum"

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(2, 0, 'drum');

// myFish is ["angel", "clown", "drum", "mandarin", "sturgeon"] 
// se elimină [], adică nici un element

Elimină 1 element de la indexul 3

var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
var removed = myFish.splice(3, 1);

// se elimină ["mandarin"]
// myFish este ["angel", "clown", "drum", "sturgeon"] 

Elimină 1 element de la indexul 2, și adaugă "trumpet"

var myFish = ['angel', 'clown', 'drum', 'sturgeon'];
var removed = myFish.splice(2, 1, 'trumpet');

// se elimină ["drum"]
// myFish este ["angel", "clown", "trumpet", "sturgeon"]

Elimină 2 elemente de la indexul 0, și adaugă "parrot", "anemone" și "blue"

var myFish = ['angel', 'clown', 'trumpet', 'sturgeon'];
var removed = myFish.splice(0, 2, 'parrot', 'anemone', 'blue');

// se elimină ["angel", "clown"]
// myFish este ["parrot", "anemone", "blue", "trumpet", "sturgeon"] 

Elimină 2 elemente de la indexul 2

var myFish = ['parrot', 'anemone', 'blue', 'trumpet', 'sturgeon'];
var removed = myFish.splice(myFish.length - 3, 2);

// se elimină ["blue", "trumpet"]
// myFish este ["parrot", "anemone", "sturgeon"] 

Elimină 1 element de la indexul -2

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(-2, 1);

// se elimină ["mandarin"]
// myFish este ["angel", "clown", "sturgeon"] 

Elimină toate elementele de după indexul 2 (incl.)

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(2);

// se elimină ["mandarin", "sturgeon"]
// myFish este ["angel", "clown"] 

Specificații

Specificație Status Comentariu
ECMAScript 3rd Edition (ECMA-262) Standard Definiția inițială. Implementat în JavaScript 1.2.
ECMAScript 5.1 (ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Living Standard  

Compatibilitate cu browser-ele

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support1 Yes15.5 Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support Yes Yes Yes4 Yes Yes Yes

Vezi și

  • push() / pop() — adaugă/elimină elemente de la capătul unui array
  • unshift() / shift() — adaugă/elimină elemente de la începutul unui array
  • concat() — returneză un nou array format din array-ul curent concatenat cu alte array-uri și/sau valoare/valori.

Document Tags and Contributors

 Contributors to this page: srzvan
 Last updated by: srzvan,