O que é destructuring?
Destructuring (desestruturação) é uma expressão no Javascript que possibilita ao usuário “desempacotar” valores de um array ou propriedades de objetos, em variáveis diferentes!
Com ele, conseguimos criar um código mais legível, mais estruturado e fácil de dar manutenção!
Sem este conceito, caso quiséssemos acessar os três valores de um array, teríamos que fazer algo desta forma:
1 | const array = ["Um", "Dois", "Três"]; |
Agora, se formos reescrever o mesmo código, utilizando o destructuring:
1 | const array = ["Um", "Dois", "Três"]; |
Muito mais simples, não é mesmo?
Hora de desestruturar tudo!
Com esta mesma sintaxe, conseguimos fazer muito mais coisas! Vamos mostrar algumas coisas legais que conseguimos fazer com ele:
- Pular itens
Passando vírgula, conseguimos pular quantos elementos quisermos e capturar o restante.
1 | let [, , terceiro] = [1, 2, 3]; |
- Capturar um elemento em uma variável e o resto em outra
Combinando com o operador spread (os três pontinhos), conseguimos associar quantos itens quisermos e associamos o restante à última variável após os três pontos.
1 | let [item, ...resto] = [1, 2, 3, 4, 5]; |
- Simplifica quando a propriedade e o valor têm nomes iguals
Conseguimos simplificar a escrita do código quando a propriedade e o nome da variável são iguais:
1 | let { nome, sobrenome } = { nome: "Victor", sobrenome: "Jordan" }; |
- Valor default
Você pode definir um valor padrão, no caso do valor desempacotado seja undefined
:
1 | let [a = 5, b = 7] = [1]; |
- Troca de variáveis
Com o destructuring, duas variáveis podem ter seus valores trocados, sem a necessidade de uma variável auxiliar!
1 | let a = 4; |
Com esta destructuring no javascript, conseguimos melhorar a qualidade de nossos códigos, tornando-os menos repetitivos, escrevendo menos mas de maneira mais eficiente e elegante!