splice vs slice en JavaScript

Shraddha Paghdar 12 octubre 2023
splice vs slice en JavaScript

Los arrays en JavaScript son objetos especiales con propiedades predefinidas. Estas son las propiedades numéricas que se pueden asignar a los valores pasados ​​como parámetros de entrada. JavaScript proporciona varios métodos para trabajar con arrays. Algunos de los métodos de matriz más populares son .push(), .pop(), .reverse() etc. Todos estos métodos modifican el array.

En este artículo, aprenderemos la diferencia entre splice y slice en JavaScript.

splice() vs slice() en JavaScript

splice()

El método splice() afecta o modifica el contenido de un array. Elimina o reemplaza elementos existentes y/o agrega nuevos elementos en su lugar.

Sintaxis:

splice(start)
splice(start, deleteCount)
splice(start, deleteCount, item1)
splice(start, deleteCount, item1, item2, itemN)

El método JavaScript Splice tiene tres parámetros, el primero de los cuales es start. Es un parámetro obligatorio que especifica la posición/índice de inicio de un array en la que se comienza a modificar el array. Si es mayor que la longitud del array, el inicio se establece en la longitud del array.

En este caso, no se elimina ningún elemento, pero el método se comporta como una función de suma, agregando tantos elementos como [n*] elementos se proporcionan. Si es negativo, comienza con esa cantidad de elementos al final del array.

El segundo parámetro es deleteCount, que es un parámetro opcional. Este parámetro especifica el número de elementos del array que se eliminarán desde el principio. Si se omite deleteCount o su valor es igual o mayor que array.length - start, entonces todos los elementos desde el principio hasta el final del array se eliminan 0 o negativo, no se elimina ningún elemento. En este caso, debe ingresar al menos un artículo nuevo.

El tercer parámetro es item1, item2, ..., que es un parámetro opcional. Este parámetro especifica los elementos que se agregarán al array, comenzando por el principio. Si no especifica un elemento, splice() solo elimina elementos del array.

Este método devuelve un array que contiene los elementos eliminados. Se devuelve un array de un elemento si solo se elimina un elemento. Se devuelve un array vacía, si no se elimina ningún elemento. Para obtener más información, lea la documentación del método empalme.

const osConfig = ['Linux', 'Ubuntu', 'MacOS', 'Windows'];
console.log(osConfig, osConfig.splice(0, 2));

En el ejemplo anterior, hemos especificado los diferentes tipos de sistemas operativos. Cuando intente extraer el sistema operativo de código abierto, afectará el array osConfig original y devolverá un array que no contiene el nombre del sistema operativo de fuente abierta. Cuando ejecute el código anterior en cualquier navegador, imprimirá algo como esto.

Producción :

["MacOS", "Windows"], ["Linux", "Ubuntu"]

slice()

El método slice() devuelve una copia superficial de parte de un array en un objeto de matriz recién seleccionado de principio a fin, donde inicio y fin son los índices de los elementos de ese array. el array original no se verá afectada ni modificada. El método splice() puede tomar n número de argumentos, y el método slice() acepta 2 argumentos.

Sintaxis:

slice()
slice(start)
slice(start, end)

El método slice() de JavaScript contiene dos parámetros, entre los cuales start es el primer parámetro, un parámetro opcional. Este parámetro especifica el índice en el que iniciar la extracción. Este índice parte de 0. El valor predeterminado para start es siempre 0. Si el inicio es mayor que la longitud de un array, se devuelve un array vacía.

El segundo parámetro es end, un parámetro opcional. Este parámetro especifica el punto final donde debe terminar la extracción. slice extrae hasta el índice especificado pero sin incluir el final. Por ejemplo, si el final es n, el último elemento extraído es n-1. Si no se especifica el final, el método slice extrae hasta el final del array.

Este método devuelve un nuevo array que contiene los elementos extraídos. Para más información, lee la documentación del método slice.

const osConfig = ['Linux', 'Ubuntu', 'MacOS', 'Windows'];
console.log(osConfig, osConfig.slice(0, 2););

En el ejemplo anterior, hemos especificado los diferentes tipos de sistemas operativos. Cuando intente extraer el sistema operativo de código abierto, no afectará el array osConfig original, sino que creará un nuevo array que contiene el nombre del sistema operativo de fuente abierta. Cuando ejecute el código anterior en cualquier navegador, imprimirá algo como esto.

Producción :

["Linux", "Ubuntu", "MacOS", "Windows"], ["Linux", "Ubuntu"]
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn