--- title: Array.prototype.splice() slug: Web/JavaScript/Reference/Global_Objects/Array/splice translation_of: Web/JavaScript/Reference/Global_Objects/Array/splice ---
De splice()-methode past de inhoud van een array aan door bestaande elementen te verwijderen en/of nieuwe elementen toe te voegen.
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
startstart worden omgezet naar de lengte van de array. Indien negatief begint hij het absolute aantal vanaf het einde van de array.deleteCountdeleteCount groter is dan het overige aantal elementen in de array (beginnend bij de startwaarde) worden al deze overige elementen verwijderd.deleteCount niet wordt meegegeven, wordt deze als volgt berekend: (arr.length - start). Dit heeft als resultaat dat alle elementen na de startwaarde worden verwijderd.item1, item2, ...start -waarde. Indien niet meegegeven zullen er enkel elementen uit de array verwijderd worden.Een array die de verwijderde items bevat. Wanneer slechts één element is verwijderd, wordt er een array teruggegeven met één element. Wanneer er geen elementen zijn verwijderd, wordt een lege array teruggegeven.
Wanneer een ander aantal elementen wordt ingevoegd dan het aantal elementen dat wordt verwijderd, zal de array een andere lengte hebben na afloop van de aanroep.
splice()The following script illustrates the use of splice():
var myFish = ['angel', 'clown', 'mandarin', 'surgeon']; // removes 0 elements from index 2, and inserts 'drum' var removed = myFish.splice(2, 0, 'drum'); // myFish is ['angel', 'clown', 'drum', 'mandarin', 'surgeon'] // removed is [], no elements removed // myFish is ['angel', 'clown', 'drum', 'mandarin', 'surgeon'] // removes 1 element from index 3 removed = myFish.splice(3, 1); // myFish is ['angel', 'clown', 'drum', 'surgeon'] // removed is ['mandarin'] // myFish is ['angel', 'clown', 'drum', 'surgeon'] // removes 1 element from index 2, and inserts 'trumpet' removed = myFish.splice(2, 1, 'trumpet'); // myFish is ['angel', 'clown', 'trumpet', 'surgeon'] // removed is ['drum'] // myFish is ['angel', 'clown', 'trumpet', 'surgeon'] // removes 2 elements from index 0, and inserts 'parrot', 'anemone' and 'blue' removed = myFish.splice(0, 2, 'parrot', 'anemone', 'blue'); // myFish is ['parrot', 'anemone', 'blue', 'trumpet', 'surgeon'] // removed is ['angel', 'clown'] // myFish is ['parrot', 'anemone', 'blue', 'trumpet', 'surgeon'] // removes 2 elements from index 2 removed = myFish.splice(myFish.length -3, 2); // myFish is ['parrot', 'anemone', 'surgeon'] // removed is ['blue', 'trumpet'] const myFish = ['parrot', 'anemone', 'blue', 'trumpet', 'surgeon']; // removes 3 elements starting at index 2 const removed = myFish.splice(2); // myFish is ['parrot', 'anemone'] // removed is ['blue', 'trumpet', 'surgeon']
| Specification | Status | Comment |
|---|---|---|
| {{SpecName('ES3')}} | {{Spec2('ES3')}} | Initial definition. Implemented in JavaScript 1.2. |
| {{SpecName('ES5.1', '#sec-15.4.4.12', 'Array.prototype.splice')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-array.prototype.splice', 'Array.prototype.splice')}} | {{Spec2('ES6')}} | |
| {{SpecName('ESDraft', '#sec-array.prototype.splice', 'Array.prototype.splice')}} | {{Spec2('ESDraft')}} |
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | {{CompatChrome("1.0")}} | {{CompatGeckoDesktop("1.7")}} | {{CompatIE("5.5")}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
In JavaScript 1.2 retourneert de splice()-methode het verwijderde element, wanneer slechts één element is verwijderd (deleteCount parameter is 1); in andere gevallen retourneert de methode een array met de verwijderde elementen.
Ter info: De laatste browser die gebruik maakte van JavaScript 1.2 was Netscape Navigator 4, dus er kan altijd worden verwacht dat splice() altijd een array retourneert. Dit is het geval wanneer een JavaScript-object een length-property heeft en een splice()-method. {{domxref("console.log()")}} werkt op dit object als op een Array-acthig object. Het object controleren met instanceof Array retourneert false.