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

Black Week do Nexus
A formação de IA mais completa do Brasil
- 7 formações · 112 cursos · 26 mil alunos
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

VPS Hostinger para seu sistema
10% OFF extraVPS com SSD NVMe e backups semanais. O cupom MATHEUSHORADECODAR é aplicado automaticamente pelo link.
Ver planos com 10% OFF →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:

Crie sistemas com IA para vender
Prompts, modelos e checklists para criar e publicar seu sistema com IA e preparar a oferta para o primeiro cliente.
Quero o e-book gratuito Receba o livro e os bônus no seu e-mail.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 30min
Blog | Mais populares
As diferenças de var, let e const
Neste artigo veremos quais são as diferenças nestas três formas de declarar valores, e também casos de uso para var, let e const. Este conteúdo […]

Como redirecionar para outra página com JavaScript
Neste artigo vamos aprender como redirecionar para outra página com JavaScript, sem utilizar libs como jQuery, de uma maneira simples e efetiva. Fala programador(a), tudo […]
Exercícios de lógica de programação JavaScript com gabarito
Pratique lógica com JavaScript resolvendo um exercício antes de abrir o gabarito. Execute o código, teste uma entrada comum e um caso de borda, como […]
