DevPath · Aprenda a programar ESPTEN

JavaScript moderno (ES6+)

Desestruturação

Desestruturação (destructuring)

A desestruturação permite "desempacotar" valores de arrays e objetos em variáveis independentes de forma concisa.

Desestruturar arrays

const coordenadas = [10, 20];
const [x, y] = coordenadas;
console.log(x, y); // 10 20

Eles são atribuídos por posição. Você pode pular elementos com vírgulas:

const [primeiro, , terceiro] = ["a", "b", "c"];
console.log(primeiro, terceiro); // "a" "c"

Desestruturar objetos

Aqui eles são atribuídos por nome de propriedade:

const pessoa = { nome: "Ana", idade: 30 };
const { nome, idade } = pessoa;
console.log(nome, idade); // "Ana" 30

Renomear e valores padrão

const { nome: n, pais = "Brasil" } = pessoa;
console.log(n);    // "Ana"
console.log(pais); // "Brasil" (não existia, usa o valor padrão)

A desestruturação é muito comum ao receber parâmetros em funções:

function saudar({ nome }) {
  return "Olá, " + nome;
}
saudar({ nome: "Luis" }); // "Olá, Luis"

Exemplos

Trocar variáveis com desestruturação

let a = 1;
let b = 2;
[a, b] = [b, a]; // truque moderno para trocar
console.log(a, b); // 2 1
Coloque isto em prática

O DevPath é um curso prático: aqui você lê a teoria; no app você a coloca em prática com exercícios que rodam de verdade, offline.

Comece grátis no app →
Spread e rest (...) →