los - javascript remove inner elements
¿Cómo eliminar elementos de matriz? (4)
¿Es posible eliminar el contenido de la matriz en función del índice? Si tengo 2 matrices como estas:
Array1 que contiene 15 valores y quiero obtener los últimos 10 valores.
Antes de retirar elementos:
array1 == [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]
Después de eliminar elementos:
array1 == [5,6,7,8,9,10,11,12,13,14]
Array2 que contiene 15 valores y luego quiero obtener solo los primeros 10 valores.
Antes de retirar elementos:
array2 == [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]
Después de eliminar elementos:
array2 == [0,1,2,3,4,5,6,7,8,9]
Pero hay condiciones que deben cumplirse:
si la matriz solo contiene 3 elementos no es necesario descartar los elementos de la matriz, así como si la matriz solo contiene 10 elementos. pero si la matriz contiene más de 10 elementos, el exceso se descarta.
Es un poco difícil de seguir tu pregunta, pero prueba esto:
array = array.slice(-10);
// or
last10 = array.splice(-10);
// array has first array.length-10 elements
Para mantener los primeros diez artículos:
if (theArray.length > 10) theArray = theArray.slice(0, 10);
O, quizás menos intuitivo:
if (theArray.length > 10) theArray.length = 10;
Para mantener los últimos diez artículos:
if (theArray.length > 10) theArray = theArray.slice(theArray.length - 10, 10);
Puede usar un valor negativo para el primer parámetro para especificar la longitud - n, y omitir el segundo parámetro lleva todos los elementos al final, por lo que el mismo parámetro también se puede escribir como:
if (theArray.length > 10) theArray = theArray.slice(-10);
El método de splice
se usa para eliminar elementos y reemplazarlos con otros, pero si no especifica ningún elemento nuevo, solo se puede usar para eliminar elementos. Para mantener los primeros diez artículos:
if (theArray.length > 10) theArray.splice(10, theArray.length - 10);
Para mantener los últimos diez artículos:
if (theArray.length > 10) theArray.splice(0, theArray.length - 10);
Use la función array.splice(index, count)
para eliminar elementos de count
en el index
. Para eliminar elementos del final, use array1.splice(array1.length - 10, 1);
Ver splice()
El método
splice()
cambia el contenido de una matriz eliminando elementos existentes y / o agregando nuevos elementos.
No se creará una nueva matriz, si desea crear una nueva división de uso de matriz.