Divisão de matriz JavaScript ()

O método splice () de JavaScript Array retorna uma matriz alterando (adicionando / removendo) seus elementos no lugar.

A sintaxe do splice()método é:

 arr.splice(start, deleteCount, item1,… , itemN)

Aqui, arr é um array.

Parâmetros splice ()

O splice()método inclui:

  • start - O índice de onde a matriz é alterada.
  • deleteCount (opcional) - O número de itens dos quais remover start.
  • item1,…, itemN (opcional) - Os elementos a serem adicionados ao startíndice. Se não for especificado, splice()apenas removerá elementos da matriz.

Valor de retorno de splice ()

  • Retorna uma matriz contendo os elementos excluídos.

Observação: o splice()método altera a matriz original.

Exemplo 1: Usando o método splice ()

 let languages = ("JavaScript", "Python", "Java", "Lua"); // replacing "Java" & "Lua" with "C" & "C++" let removed = languages.splice(2, 2, "C", "C++"); console.log(removed); // ( 'Java', 'Lua' ) console.log(languages); // ( 'JavaScript', 'Python', 'C', 'C++' ) // adding elements without deleting existing elements let removed1 = languages.splice(1, 0, "Java", "Lua"); console.log(removed1); // () console.log(languages); // ( 'JavaScript', 'Java', 'Lua', 'Python', 'C', 'C++' ) // removing 3 elements let removed2 = languages.splice(2, 3); console.log(removed2); // ( 'Lua', 'Python', 'C' ) console.log(languages); // ( 'JavaScript', 'Java', 'C++' )

Resultado

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

Exemplo 2: Usando splice () para diferentes valores deleteCount

  • Se start> array.length , splice()não exclui nada e começa a anexar argumentos ao final da matriz.
  • Se start <0 , o índice é contado de trás para frente ( array.length + start ). Por exemplo, -1 é o último elemento.
  • Se array.length + start <0 , ele começará a partir do índice 0 .
 let languages = ("JavaScript", "Python", "Java", "Lua"); // does not removes, only appends to the end let removed = languages.splice(5, 2, "C++"); console.log(removed); // () console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "C++") // remove last element and add 3 more elements let removed1 = languages.splice(-1, 1, "Swift", "Scala", "Go"); console.log(removed1); // ( "C++" ) console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "Swift", "Scala", "Go") 

Resultado

 () ("JavaScript", "Python", "Java", "Lua", "C ++") ('C ++') ("JavaScript", "Python", "Java", "Lua", "Swift", " Scala "," Go ")

Exemplo 3: Usando splice () para diferentes valores iniciais

  • Se deleteCount for omitido ou for maior que o número de elementos restantes na matriz, ele excluirá todos os elementos do início ao fim da matriz.
  • Se deleteCount for 0 ou negativo , nenhum elemento será removido. Mas, pelo menos um novo elemento deve ser especificado.
 let languages = ("JavaScript", "Python", "Java", "Lua"); // removes everything from start let removed = languages.splice(1); console.log(removed); // ( "Python", "Java", "Lua" ) console.log(languages); // ( "JavaScript" ) // remove none & add 3 more element let removed1 = languages.splice(1, -2, "Swift", "Scala", "Go"); console.log(removed1); // ( ) console.log(languages); // ( "JavaScript", "Swift", "Scala", "Go" ) 

Resultado

 ("Python", "Java", "Lua") ("JavaScript") () ("JavaScript", "Swift", "Scala", "Go")

Leituras recomendadas:

  • JavaScript Array.pop ()
  • JavaScript Array.push ()

Artigos interessantes...