DEV Community

Amanda Silva
Amanda Silva

Posted on

Variáveis do tipo Object em javascript

Estamos de volta, agora falando do tipo de variável, o Object.

Alt Text

O object é uma coleção de dados que permite o registro de atributos e propriedades que tem algum tipo de relacionamento entre si.

Vamos declarar nosso primeiro objeto chamado pessoas:

Alt Text

Como os outros tipos de variáveis que já vimos, podemos manipular os objects também.
Podemos alterar alguma dos atributo de dentro do objeto. Vamos chamar nosso objeto e checar a atributo name:

Alt Text

Para atribuir um novo valor ao atributo 'name' do nosso objeto podemos chamar o nosso objeto 'pessoa' e instânciar ao atributo nome(para instanciar devemos digitar o nome do nosso objeto 'pessoa' e colocar um '.' seguido do atributo) e atribuir um novo valor:

Alt Text

Existe um outro meio de trocamos o valor do atributo, seguindo a estrutura de Array(veremos o que é um array futuramente ok):

Alt Text

Podemos criar uma nova variável que recebe o atributo 'name':

Alt Text

e alterar o nome através dessa nova variável que criamos também:

Alt Text

E se eu quiser acrescentar mais um atributo no nosso objeto, é possível?
Sim sim, basta chamarmos nosso objeto e já instanciar nosso novo atributo, é bem simples:

Alt Text

Amanda, e se eu quiser excluir um atributo, será que eu consigo? Anhãn, vamos ver como é?
De princípio nosso objeto tem os atributos name, idade e lastName. Vamos deletar o atributo idade ok?

Alt Text

Funções em Object

Agora vamos ver as possíveis funções existentes do object.

A função 'keys' permite que sejam exibidas todas os atributos do nosso objeto. Vamos utilizar o console.log para exibir nossa função:

Alt Text

E se eu quiser exibir os atributos e seus conteúdos? Usamos a função 'entries':

Alt Text

Podemos inserir outro atributo e já imprimir o objeto completo com a função Object.assign:

Alt Text

Existe uma função que se chama freeze, que literalmente congela o objeto.
Vamos declarar um novo objeto e chamar o freeze:

Alt Text

Agora o atributo name está congelado com o nome 'Lívia'. Vamos tentar realizar algumas alterações no objeto e ver o que acontece chamando o mesmo após essas manipulações:

Alt Text

Como você pode ver, não acontece nada com o nosso objeto, porque chamamos o Object.freeze e 'congelamos' o mesmo.
Para finalizar, vamos falar da função 'seal'. A função seal também 'congela' o objeto, mas em partes.
Vamos declarar mais um objeto pessoa e chamar a função Object.seal:

Alt Text

Agora vamos executar algumas manipulações com esse objeto e ver o que acontece:

Alt Text

Observe que ao tentar deletar, o retorno foi false, o que significa que nós conseguimos alterar o atributo nome, mas não conseguimos exlcuir. É isso que o 'seal' faz, pega nosso objeto e só permite alterações nos atributos já existentes.
Vamos tentar inserir mais um atributo no nosso objeto:

Alt Text

Viu, não acontece nada. Tentamos inserir o atributo idade, mas nosso objeto está congelado parcialmente com a função 'seal' e não poermitiu essa inserção.

Bom por hoje é só, espero que estejam gostando. Tem algo que quer acrescentar, ou até corrigir? É só deixar seu recadinho. Até mais...

Alt Text

Top comments (0)