Como fazer uma cópia de array sem referência em JavaScript
Neste artigo você vai aprender a fazer uma cópia de array sem referência na linguagem JavaScript, de uma forma simples e eficaz

Fala programador(a), beleza? Bora aprender mais sobre arrays em JavaScript!
Quando atribuímos um array já criado a uma outra variável acabamos criando uma referência e não um novo valor
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 120 aulas
- 4 projetos
- 9h 45min
Ou seja, se alteramos o array de referência alteramos também o array pai, veja um exemplo:
var a = [1,2,3]; var b = a; b[0] = 5; console.log(a); // [5, 2, 3]
Então como solucionar isso? Criar um array que seja uma cópia de outro, porém independente
Podemos utilizar o slice, sem parâmetro algum, aí um novo array será criado e teremos esta cópia independente
Veja na prática:
var a = [1,2,3]; var b = a.slice(); b[0] = 5; console.log(a); // [1, 2, 3]
Temos o mesmo exemplo replicado, porém agora com slice, e o resultado é completamente diferente
O array b não é mais uma referência de a, e sim um dado completamente novo na memória do computador
Com a vinda do ES6 também temos uma possibilidade de cópia de array sem referência, veja:
var a = [1,2,3]; var b = [...a]; b[0] = 5; console.log(a); // [1, 2, 3]
Este recurso é chamado de destructuring, onde ele vai resgatar cada um dos elementos vindos de a e transformar no array b
Conclusão
Neste artigo vimos como criar uma cópia de array sem referência em JavaScript
Utilizamos duas abordagens: slice e destructuring
O slice sem parâmetros simplesmente cria o novo array baseado no antigo
Já o destructuring vai resgatar todos os elementos do array anterior e inserir no novo, lembrando que é uma funcionalidade do ES6 e não está padronizada para todos os navegadores, tome cuidado ao utilizar
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares
As diferenças de var, let e const

Como redirecionar para outra página com JavaScript
Exercícios de lógica de programação JavaScript com gabarito
Quais são os melhores exercícios lógica de programação JavaScript? Colocar em prática os exercícios de lógica de programação em JavaScript é de extrema importância para […]
