Método splice

El método splice elimina o agrega elementos a un array. Se pueden eliminar elementos, agregar elementos o hacer ambas cosas simultáneamente. El método es muy versátil y complejo de entender. El método modifica el array original y devuelve un array con los elementos eliminados.

El primer parámetro del método acepta el número del elemento del array que se debe eliminar. El segundo parámetro - cuántos elementos del array se deben eliminar. Si se establece en 0 - no se eliminarán elementos (solo se agregarán nuevos). Luego, separados por comas, siguen los elementos que se deben agregar al array (son parámetros opcionales). Estos elementos se agregarán en lugar de los elementos eliminados del array.

Si no hubo eliminación (cuando el segundo parámetro es 0) - los elementos se insertarán en el array comenzando desde la posición especificada en el primer parámetro del método. El primer parámetro puede tener un valor negativo. En este caso, el conteo de la posición comenzará no desde el inicio del array, sino desde el final. El último elemento tendrá el número -1.

Sintaxis

javascriptarray.splice(donde_eliminar, cuantos_eliminar, [insertar], [insertar]...);

Ejemplo

Eliminemos tres elementos, comenzando desde el primero:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);

console.log(arr);

Resultado de la ejecución del código:

javascript['a', 'e']

Ejemplo

Mostremos el array de elementos eliminados:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);

console.log(del);

Resultado de la ejecución del código:

javascript['b', 'c', 'd']

Ejemplo

Primero eliminemos el elemento con el número 2, y luego en su lugar insertemos otros tres nuevos elementos:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');

console.log(arr);

Resultado de la ejecución del código:

javascript['a', 'b', '1', '2', '3', 'd', 'e']

Ejemplo

Ahora no eliminemos nada, pero en la posición 2, insertemos otros tres nuevos elementos:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');

console.log(arr);

Resultado de la ejecución del código:

javascript['a', 'b', '1', '2', '3', 'c', 'd', 'e']

Ejemplo . Valor negativo

Eliminemos el penúltimo elemento:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);

console.log(arr);

Resultado de la ejecución del código:

javascript['a', 'b', 'c', 'e']

Véase también

  • método slice,
    que también extrae partes de un array
  • método shift,
    que elimina el primer elemento del array
  • método pop,
    que elimina el último elemento del array