Cómo insertar un elemento en un determinado índice de un array

Fácil - 2 min. lectura

En este articulo veremos como es posible insertar un nuevo elemento en cualquier posición de un array.

Partamos de un ejemplo sencillo.

const meses = ["enero", "marzo", "junio"]

Imagina que nos damos cuenta que en nuestro array meses se nos ha olvidadoincluir febrero. Si añadimos un nuevo elemento con push() este se añadirá al final del array y nosotros necesitamos que febrero esté entre enero y marzo.

¿Cómo usar splice?

Para añadir un elemento, podemos usar el método splice que nos permite cambiar el contenido de un array eliminando o agregando nuevos elementos.

Splice recibe los siguientes argumentos

splice(start, [deleteCount], [items1,item2, item3, ...itemN])

start
Es el índice desde donde comenzaremos a cambiar nuestro array

deleteCount (opcional)
Es el número de elementos que eliminaremos desde el punto definido con start

items
Son los elemenos que agregaremos desde el punto definido con start

Volviendo a nuestro ejemplo, para añadir febrero a nuestro array meses con el método splice haremos lo siguiente

const meses = ["enero", "marzo", "junio"]
meses.splice(1, 0, "febrero")

Como puedes observar le indicamos a splice que desde el índice 1 no elimine ningún elemento e incluya el elemento febrero

¿Y que ocurre si queremos añadir más elementos?

¿Cómo añadir mmultiples elementos?

Como vimos, permite añadir tantos elementos como deseemos simplemente añadiéndolos desde el argumeto 3 en adelante

const meses = ["enero", "febrero", "marzo", "junio"]
meses.splice(3, 0, "abril", "mayo")

O incluso si queremos usar un array hacer uso de destructuring

const meses = ["enero", "febrero", "marzo", "junio"]
meses.splice(3, 0, ...["abril", "mayo"])