Rebanada de matriz de JavaScript ()

El método JavaScript Array slice () devuelve una copia superficial de una parte de una matriz en un nuevo objeto de matriz.

La sintaxis del slice()método es:

 arr.slice(start, end)

Aquí, arr es una matriz.

Parámetros de slice ()

El slice()método incluye:

  • start (opcional): índice de inicio de la selección. Si no se proporciona, la selección comienza en el inicio 0 .
  • end (opcional): índice de finalización de la selección (exclusivo). Si no se proporciona, la selección termina en el índice del último elemento.

Valor de retorno de slice ()

  • Devuelve una nueva matriz que contiene los elementos extraídos.

Ejemplo 1: método slice () de JavaScript

 let languages = ("JavaScript", "Python", "C", "C++", "Java"); // slicing the array (from start to end) let new_arr = languages.slice(); console.log(new_arr); // ( 'JavaScript', 'Python', 'C', 'C++', 'Java' ) // slicing from the third element let new_arr1 = languages.slice(2); console.log(new_arr1); // ( 'C', 'C++', 'Java' ) // slicing from the second element to fourth element let new_arr2 = languages.slice(1, 4); console.log(new_arr2); // ( 'Python', 'C', 'C++' )

Salida

 ('JavaScript', 'Python', 'C', 'C ++', 'Java') ('C', 'C ++', 'Java') ('Python', 'C', 'C ++')

Ejemplo 2: segmento de JavaScript () con índice negativo

En JavaScript, también puede utilizar índices de inicio y finalización negativos . El índice del último elemento es -1 , el índice del penúltimo elemento es -2 , y así sucesivamente.

 const languages = ("JavaScript", "Python", "C", "C++", "Java"); // slicing the array from start to second-to-last let new_arr = languages.slice(0, -1); console.log(new_arr); // ( 'JavaScript', 'Python', 'C', 'C++' ) // slicing the array from third-to-last let new_arr1 = languages.slice(-3); console.log(new_arr1); // ( 'C', 'C++', 'Java' )

Salida

 ('JavaScript', 'Python', 'C', 'C ++') ('C', 'C ++', 'Java')

Ejemplo 3: segmento de JavaScript () con objetos como elementos de matriz

El slice()método superficial copia los elementos de la matriz de la siguiente manera:

  • Copia referencias de objetos a la nueva matriz. ( Por ejemplo , una matriz anidada) Entonces, si se modifica el objeto referenciado, los cambios son visibles en la nueva matriz devuelta.
  • Copia el valor de cadenas y números en la nueva matriz.
 let human = ( name: "David", age: 23, ); let arr = (human, "Nepal", "Manager"); let new_arr = arr.slice(); // original object console.log(arr(0)); // ( name: 'David', age: 23 ) // making changes to the object in new array new_arr(0).name = "Levy"; // changes are reflected console.log(arr(0)); // ( name: 'Levy', age: 23 )

Salida

 (nombre: 'David', edad: 23) (nombre: 'Levy', edad: 23)

Lectura recomendada: JavaScript Array.splice ()

Articulos interesantes...