Sitemap
Ricardo Reis

Ricardo Reis

Bitcoin

Press enter or click to view image in full size

Neste tutorial você aprenderá sobre os objetos JavaScript e como manipular as propriedades dos objetos de forma eficiente.

6 min readJun 8, 2020

--

English version: https://www.javascripttutorial.net/javascript-objects/

Em JavaScript um objeto é uma coleção de propriedades, sendo cada propriedade definida como uma sintaxe de par chave : valor. A chave pode ser uma string e o valor pode der qualquer informação.

Para criar um objeto, use a sintaxe literal de objeto. Por exemplo, o exemplo a seguir cria um objeto vazio:

Press enter or click to view image in full size

Para criar um objeto com propriedades, use a sintaxe chave : valor. Por exemplo, para criar um objeto person com as propriedades firstName e lastName, faça da seguinte forma:

Press enter or click to view image in full size

O objeto person possui duas propriedades:

  • A primeira propriedade, identificada pela chave firstName e que possui como valor a string 'John'.
  • A segunda propriedade, identificada pela chave lastName e que possui como valor a string 'Doe'.

Acessando as propriedades

Para acessar uma propriedade de um objeto, use uma das duas notações (sintaxes):

  • Notação de ponto.
  • Notação de array.

A notação de ponto (.)

O exemplo a seguir mostra como usar a notação de ponto para acessar uma propriedade de um objeto:

Press enter or click to view image in full size

Por exemplo, para acessar a propriedade firstName do objeto person, use a seguinte expressão:

Press enter or click to view image in full size

O trecho a seguir cria um objeto de person e mostra o nome e o sobrenome no console:

Press enter or click to view image in full size

Anotação do tipo Array [ ]

A seguir mostramos como acessar o valor da propriedade de um objeto usando colchetes, como na notação de Array:

Press enter or click to view image in full size

Por exemplo:

Press enter or click to view image in full size

Quando um nome de propriedade contém espaços, você precisa colocá-lo entre aspas, por exemplo:

Press enter or click to view image in full size

Para acessar o 'building no' você deve usar obrigatoriamente a notação de Array (usar aspas e colchetes):

Press enter or click to view image in full size

Se você usar a notação de ponto, será gerado um erro:

Press enter or click to view image in full size

Tentar ler uma propriedade que não existe resultará em um undefined. Por exemplo:

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Alterar o valor de uma propriedade

Para alterar o valor de uma propriedade, use o operador de atribuição. Por exemplo:

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Adicionar uma nova propriedade em um objeto

Ao contrário de objetos em outras linguagens de programação, como Java c#, você pode adicionar uma propriedade a um objeto depois de criá-lo.

Get Ricardo Reis’s stories in your inbox

Join Medium for free to get updates from this writer.

A declaração a seguir, adiciona a propriedade age ao objeto person e atribui 25 a ela:

Press enter or click to view image in full size

Excluir uma propriedade de um objeto

Para excluir uma propriedade de um objeto, use o operador delete:

Press enter or click to view image in full size

O exemplo a seguir remove a propriedade age do objeto person:

Press enter or click to view image in full size

Verifique se a propriedade existe

Para verificar se uma propriedade existe em um objeto, use o operador in:

Press enter or click to view image in full size

O exemplo a seguir cria um objeto employee e usa o operador in para verificar se as propriedades ssn e employeeId existem no objeto:

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Iterar sobre o objeto usando loop for…in

Para iterar sobre todas as propriedades de um objeto sem saber os nomes das propriedades, use o loop for...in:

Press enter or click to view image in full size

Por exemplo, a instrução a seguir cria um objeto website e itera sobre suas propriedades usando o loop for...in:

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Métodos

Objetos possuem ações. As ações são representadas por funções. O seguinte trecho adiciona a ação greet ao objeto person:

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Neste exemplo, adicionamos uma expressão de função para criar a ação e atribuímos à propriedade greet do objeto person:

Então, chamamos a função através da propriedade greet com o comando greet(). Quando uma função é uma propriedade de um objeto, isso é chamado de método.

Além de usar uma expressão de função, você pode definir uma função e adicioná-la ao objeto, dessa forma:

Press enter or click to view image in full size

Método Abreviado

Você pode definir métodos usando a sintaxe literal do objeto:

Press enter or click to view image in full size

A partir da versão ES6, você pode tornar o código ainda mais curto:

Press enter or click to view image in full size

O valor "this"

Normalmente os métodos precisam acessar os dados armazenados no objeto.

Por exemplo, você pode desenvolver um método que retorne o nome completo do objeto person, concatenando firstName e lastName.

Dentro do método, o valor this faz referência ao objeto que contém o método para que você possa acessar uma propriedade do objeto usando a notação de ponto.

Press enter or click to view image in full size

O exemplo a seguir usa o valor this no método getFullName():

Press enter or click to view image in full size

Resultado:

Press enter or click to view image in full size

Confira esse tutorial para mais informações sobre o valor this.

Resumo

  • Um objeto é uma coleção de propriedades de pares de chave : valor. Uma chave é uma string e um valor pode ser qualquer valor válido.
  • Use a notação de ponto . ou a notação de array [ ] para acessar uma propriedade do objeto.
  • O operador delete exclui uma propriedade de um objeto.
  • O operador in verifica se existe uma propriedade em um objeto.
  • O for...in itera as propriedades de um objeto.
  • Quando funções são propriedades de um objeto, elas são chamadas de métodos.
  • Use this dentro do método para acessar as propriedades do objeto.

Veja o índice de todos os tutoriais JavaScript

Confira uma série de outros tutoriais JavaScript que eu escrevi, clicando no link abaixo:

--

--