Anexar elementos em um Array em JavaScript
-
Use a propriedade
.length
do Array para acrescentar elementos em um Array em JavaScript -
Use o método
push()
para acrescentar elementos em um Array em JavaScript -
Use o método
unshift()
para acrescentar elementos em um Array -
Use o método
splice()
para acrescentar elementos em um Array -
Use o método
concat()
para acrescentar elementos em um Array -
Use a sintaxe
spread
para acrescentar elementos em um array
Neste artigo, aprenderemos como anexar elementos em um Array em JavaScript.
Existem vários métodos para anexar um elemento a um Array em JavaScript. Podemos anexar um único elemento, vários elementos e até mesmo anexar um Array inteira a uma determinada matriz. Podemos usar um método dependendo se queremos mudar ou não, requisitos de velocidade e eficiência, legibilidade do código.
Use a propriedade .length
do Array para acrescentar elementos em um Array em JavaScript
É a abordagem clássica em que obtemos o último índice vazio do array usando o comprimento total do array e inserimos um elemento nesse índice. Este método é o mais fácil de usar e oferece excelente eficiência. Isso nos permite anexar apenas um elemento de cada vez. É um método mutativo porque altera a matriz original.
let arr = [0, 1, 2];
arr[arr.length] = 3;
console.log(arr);
Resultado:
[0, 1, 2, 3]
No código acima, obtemos o último índice do array usando arr.length
como 3
e adicionamos elementos a esses índices.
Use o método push()
para acrescentar elementos em um Array em JavaScript
O método push()
é usado para adicionar elementos ao final do array. Podemos adicionar um único elemento, vários elementos ou até mesmo um array. É a opção mais simples e rápida, e até bate o método acima usando Array.length
em grandes arrays em alguns casos. As ações realizadas por push()
podem ser revertidas pelo método .pop()
. Quando vários elementos são passados juntos, sua ordem é preservada pelo operador push()
. Este método também altera a matriz e, portanto, é mutativo.
const arr = [1, 2, 3];
const arr2 = [8, 9, 10];
arr.push(4); // single item
arr.push(5, 6, 7); // multiple items
arr.push(...arr2); // spread operator
console.log(arr);
Resultado:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
No código acima, demonstramos todos os 3
casos: adicionar um único elemento, vários elementos e até mesmo um array inteiro usando a sintaxe de propagação. Todos os elementos são anexados ao final do array.
Use o método unshift()
para acrescentar elementos em um Array
O método unshift()
nos ajuda a adicionar um elemento ao início do array. Ele retorna o novo comprimento do array. Ele pode ser chamado ou aplicado a objetos que se assemelham a um Array de propriedades. Quando vários elementos são passados juntos, sua ordem é preservada pelo operador unshift()
. Este método também altera a matriz e, portanto, é mutativo.
const arr = [1, 2, 3];
const arr2 = [8, 9, 10];
arr.unshift(4); // single item
arr.unshift(5, 6, 7); // multiple items
arr.unshift(...arr2) // spread operator
console.log(arr);
Resultado:
[8, 9, 10, 5, 6, 7, 4, 1, 2, 3]
No código acima, demonstramos todos os 3 casos: adicionar um único elemento, vários elementos e até mesmo um Array inteira usando a sintaxe de propagação. Observe como esta operação é diferente de push()
, todos os elementos são anexados ao início do array.
Use o método splice()
para acrescentar elementos em um Array
O método splice()
pode modificar o conteúdo do array adicionando / removendo elementos. Leva os seguintes argumentos 3
:
index
: Um valor inteiro que especifica a posição para adicionar / remover elementos. Podemos até especificar um índice na parte de trás do array usando índices negativos.howmany
: é um parâmetro opcional. Ele especifica quantos itens devem ser removidos do array. Se for definido como0
, nenhum item será removido.item1, item2, ... ,itemx
: Os itens a serem adicionados à matriz.
Este método também altera a matriz e, portanto, é mutativo.
const arr = [1, 2, 3, 4, 5];
arr.splice(4, 3, 7, 8, 9);
console.log(arr);
Resultado:
[1, 2, 3, 4, 7, 8, 9]
No código acima, selecionamos o índice 4
e adicionamos os elementos 3
7,8,9
a esse índice.
Use o método concat()
para acrescentar elementos em um Array
O método concat()
pega arrays como entrada e os concatena, ou seja, pega um array e acrescenta o resto ao seu final. Mas esse operador não modifica a matriz original e retorna um Array inteiramente nova contendo o resultado combinado. Pode levar dois ou mais arrays e concatená-los. Uma vez que esse método não modifica a matriz fornecida, ele não é mutativo.
const arr = [1, 2, 3];
const arr2 = [8, 9, 10];
const arr3 = arr.concat(arr2);
console.log(arr3);
Resultado:
[1, 2, 3, 8, 9, 10]
No código acima, pegamos dois arrays, arr
e arr2
, e chamamos a função concat()
para concatená-los para formar o novo array - arr3
.
Use a sintaxe spread
para acrescentar elementos em um array
Podemos usar a sintaxe de propagação para anexar matrizes completas a uma determinada matriz. É um método não mutativo, pois apenas distribuímos os elementos do array em um novo array. É muito semelhante à operação concat()
. Isso nos ajuda a criar uma cópia ou mesclar duas matrizes separadas. É importante usar a sintaxe de propagação com cuidado. Se usarmos a sintaxe const arr = [arr1, arr2];
obtemos um Array aninhada contendo duas submatrizes, enquanto se usarmos const arr=[...arr1 , ...arr2];
nós concatenamos os elementos de ambas as matrizes.
const arr = [1, 2, 3];
const arr2 = [8, 9, 10];
const arr3 = [...arr, ...arr2];
Resultado:
[1, 2, 3, 8, 9, 10]
No código acima, usamos o operador spread para anexar duas matrizes, arr
e arr2
, em uma nova matriz - arr3
.
Todos os métodos acima são suportados por todos os principais navegadores, exceto a sintaxe de propagação. O Internet Explorer não oferece suporte à sintaxe de propagação.
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn