Skip to content

Commit 628a547

Browse files
committed
feat: add destructuring in objects.
1 parent ffdca52 commit 628a547

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

OOP/Destructuring.js

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
const pessoa = {
2+
nome: "andre",
3+
sobrenome: "melchior",
4+
idade: "21",
5+
hobbies: ["jogar", "estudar", "ouvir musica"],
6+
pet: {
7+
tipo: "gato",
8+
nome: "hiro",
9+
idade: 3,
10+
}, //objeto dentro de outro
11+
};
12+
13+
console.log(pessoa.pet.tipo);
14+
15+
// const nome = pessoa.nome;
16+
// const sobrenome = pessoa.sobrenome;
17+
// const idade = pessoa.idade;
18+
// const hobbies = pessoa.hobbies;
19+
20+
//Destructuring: Faz a mesma coisa que o comentário de código acima.
21+
const {
22+
nome: primeiroNome,
23+
sobrenome,
24+
idade,
25+
hobbies,
26+
pet: { nome, idade: idadeGato },
27+
} = pessoa;
28+
//O "nome: primeiroNome" está renomeando a variavel "nome" para "primeiroNome"
29+
//O "pet: { nome, idade: idadeGato }" é uma variavel declarada pelo destructuring que recebe as propriedades do "pet". A parte de "idade: idadeGato" é importante para renomear o nome da variavel que recebe a propriedade, senão teria erro por já existir uma variavel chamada "idade" que referencia "pessoa" dentro desse destructuring.
30+
31+
console.log(idadeGato);
32+
33+
const study = pessoa.hobbies[1];
34+
console.log(study); //exibe "estudar"
35+
36+
console.log(pessoa.nome);
37+
console.log(pessoa.sobrenome);
38+
console.log(pessoa.idade);
39+
console.log(pessoa.hobbies);
40+
41+
//adicionando mais propriedades que não foram definidas:
42+
pessoa.altura = 1.75;
43+
44+
45+
// ---------------------------------- //
46+
47+
//arrays com objetos
48+
const tarefas = [
49+
{
50+
id: 1,
51+
description: "programar website",
52+
isCompleted: true,
53+
},
54+
{
55+
id: 2,
56+
description: "treinar",
57+
isCompleted: true,
58+
},
59+
{
60+
id: 3,
61+
description: "refatorar",
62+
isCompleted: false,
63+
},
64+
];
65+
66+
//Destructuring
67+
console.log(tarefas[2].isCompleted); //exibe o ultimo index e a propriedade "isCompleted".

0 commit comments

Comments
 (0)