--- title: Array.prototype.splice() slug: Web/JavaScript/Reference/Global_Objects/Array/splice tags: - Array - JavaScript - Prototipo - Referencia - metodo translation_of: Web/JavaScript/Reference/Global_Objects/Array/splice original_slug: Web/JavaScript/Referencia/Objetos_globales/Array/splice ---
El método splice()
cambia el contenido de un array eliminando elementos existentes y/o agregando nuevos elementos.
{{EmbedInteractiveExample("pages/js/array-splice.html")}}
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
start
deleteCount
{{optional_inline}}deleteCount
se omite, o si su valor es mayor que arr.length - start
(esto significa, si es mayor que el número de elementos restantes del array, comenzando desde start
), entonces todos los elementos desde start
hasta el final del array serán eliminados.deleteCount
es igual a 0 o negativo, no se eliminará ningún elemento. En este caso, se debe especificar al menos un nuevo elemento (ver más abajo).item1, item2, ...
{{optional_inline}}start
. Si no se especifica ningún elemento, splice()
solamente eliminará elementos del array.Un array que contiene los elementos eliminados. Si sólo se ha eliminado un elemento, devuelve un array con un solo elemento. Si no se ha eliminado ningún elemento, devuelve un array vacío.
Si especifica un número diferente de elementos a agregar que los que se eliminarán, el array tendrá un tamaño diferente al original una vez finalizada la llamada.
var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; var removed = myFish.splice(2, 0, 'drum'); // myFish is ["angel", "clown", "drum", "mandarin", "sturgeon"] // removed is [], no elements removed
var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon']; var removed = myFish.splice(3, 1); // removed is ["mandarin"] // myFish is ["angel", "clown", "drum", "sturgeon"]
var myFish = ['angel', 'clown', 'drum', 'sturgeon']; var removed = myFish.splice(2, 1, 'trumpet'); // myFish is ["angel", "clown", "trumpet", "sturgeon"] // removed is ["drum"]
var myFish = ['angel', 'clown', 'trumpet', 'sturgeon']; var removed = myFish.splice(0, 2, 'parrot', 'anemone', 'blue'); // myFish is ["parrot", "anemone", "blue", "trumpet", "sturgeon"] // removed is ["angel", "clown"]
var myFish = ['parrot', 'anemone', 'blue', 'trumpet', 'sturgeon']; var removed = myFish.splice(myFish.length - 3, 2); // myFish is ["parrot", "anemone", "sturgeon"] // removed is ["blue", "trumpet"]
var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; var removed = myFish.splice(-2, 1); // myFish is ["angel", "clown", "sturgeon"] // removed is ["mandarin"]
var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; var removed = myFish.splice(2); // myFish is ["angel", "clown"] // removed is ["mandarin", "sturgeon"]
Especificación | Estado | Comentario |
---|---|---|
{{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')}} |
{{Compat("javascript.builtins.Array.splice")}}