7.1 Método splice()
Arrays em JavaScript oferecem métodos embutidos para manipulação de dados. Nesta aula, vamos ver quatro métodos principais de arrays: splice(), slice(), concat() e indexOf(). Cada um desses métodos realiza operações específicas em arrays e pode simplificar bastante o processamento de dados.
Método splice() altera o conteúdo de um array, removendo elementos existentes e/ou adicionando novos elementos em seu lugar.
Sintaxe:
splice
(start, deleteCount, item1, item2, ...);
Onde:
start: índice a partir do qual as alterações devem começardeleteCount: quantidade de elementos a serem removidos. Se não especificado, todos os elementos a partir da posição start são removidositem1,item2,...: elementos a serem adicionados no array. Se não especificado, não são adicionados elementos
Exemplo 1: Remoção de elementos
Neste exemplo, dois elementos são removidos do array fruits, começando do índice 2. O valor retornado é um array de elementos removidos.
let fruits = ['apple', 'banana', 'cherry', 'date', 'fig'];
let removed = fruits.splice(2, 2);
console.log(fruits); // Vai imprimir: ['apple', 'banana', 'fig']
console.log(removed); // Vai imprimir: ['cherry', 'date']
Exemplo 2: Adição de elementos
Neste exemplo, dois novos elementos (date e fig) são adicionados ao array fruits começando do índice 2. Nenhum elemento é removido.
let fruits = ['apple', 'banana', 'cherry'];
fruits.splice(2, 0, 'date', 'fig');
console.log(fruits); // Vai imprimir: ['apple', 'banana', 'date', 'fig', 'cherry']
Exemplo 3: Substituição de elementos
Neste exemplo, o elemento no índice 1 (banana) é substituído por dois novos elementos (date e fig).
let fruits = ['apple', 'banana', 'cherry'];
fruits.splice(1, 1, 'date', 'fig');
console.log(fruits); // Vai imprimir: ['apple', 'date', 'fig', 'cherry']
7.2 Método slice()
O método slice() retorna um novo array contendo uma cópia de parte do array original. O array original não é alterado.
Sintaxe:
array.slice(begin, end);
Onde:
begin: índice a partir do qual a cópia deve começarend: índice até o qual copiar (sem incluir o elemento neste índice). Se não especificado, todos os elementos até o final do array são copiados
Exemplo 1: Copiando parte de um array
Neste exemplo, um novo array é criado contendo elementos de índice 1 a 2 do array fruits.
let fruits = ['apple', 'banana', 'cherry', 'date', 'fig'];
let sliced = fruits.slice(1, 3);
console.log(sliced); // Vai imprimir: ['banana', 'cherry']
Exemplo 2: Copiando do início do array
Neste exemplo, um novo array é criado contendo elementos de índice 0 e 1 do array fruits.
let fruits = ['apple', 'banana', 'cherry'];
let sliced = fruits.slice(0, 2);
console.log(sliced); // Vai imprimir: ['apple', 'banana']
Exemplo 3: Copiando até o final do array
Neste exemplo, um novo array é criado contendo elementos do índice 1 até o final do array fruits.
let fruits = ['apple', 'banana', 'cherry'];
let sliced = fruits.slice(1);
console.log(sliced); // Vai imprimir: ['banana', 'cherry']
7.3 Método concat()
O método concat() é usado para unir dois ou mais arrays. Ele retorna um novo array contendo os elementos de todos os arrays concatenados.
Sintaxe:
array1.concat(array2, array3, ...);
Onde:
array1,array2,array3,...: arrays que devem ser unidos
Exemplo 1: Concatenando dois arrays
Neste exemplo, os arrays fruits1 e fruits2 são unidos em um novo array combined.
let fruits1 = ['apple', 'banana'];
let fruits2 = ['cherry', 'date'];
let combined = fruits1.concat(fruits2);
console.log(combined); // Vai imprimir: ['apple', 'banana', 'cherry', 'date']
Exemplo 2: Concatenando múltiplos arrays
Neste exemplo, três arrays são unidos em um novo array combined.
let fruits1 = ['apple', 'banana'];
let fruits2 = ['cherry', 'date'];
let fruits3 = ['fig', 'grape'];
let combined = fruits1.concat(fruits2, fruits3);
console.log(combined); // Vai imprimir: ['apple', 'banana', 'cherry', 'date', 'fig', 'grape']
Exemplo 3: Concatenando array com elementos
Neste exemplo, os elementos cherry e date são adicionados ao array fruits para criar um novo array moreFruits.
let fruits = ['apple', 'banana'];
let moreFruits = fruits.concat('cherry', 'date');
console.log(moreFruits); // Vai imprimir: ['apple', 'banana', 'cherry', 'date']
7.4 Método indexOf()
O método indexOf() retorna o primeiro índice no qual um dado elemento pode ser encontrado no array, ou -1 se o elemento não for encontrado.
Sintaxe:
array.indexOf(searchElement, fromIndex);
Onde:
searchElement: elemento que deve ser encontradofromIndex: índice a partir do qual começar a busca. Se não especificado, a busca começa do início do array
Exemplo 1: Buscando elemento no array
Neste exemplo, o método indexOf() retorna o índice do elemento banana no array fruits.
let fruits = ['apple', 'banana', 'cherry'];
let index = fruits.indexOf('banana');
console.log(index); // Vai imprimir: 1
Exemplo 2: Elemento não encontrado
Neste exemplo, o método indexOf() retorna -1, pois o elemento date não é encontrado no array fruits.
let fruits = ['apple', 'banana', 'cherry'];
let index = fruits.indexOf('date');
console.log(index); // Vai imprimir: -1
Exemplo 3: Buscando elemento a partir de um índice específico
Neste exemplo, o método indexOf() começa a busca do elemento banana a partir do índice 2 e o encontra no índice 3.
let fruits = ['apple', 'banana', 'cherry', 'banana'];
let index = fruits.indexOf('banana', 2);
console.log(index); // Vai imprimir: 3
GO TO FULL VERSION