Objetos Javascript

Javascript
Tempo de leitura: 3 minutos

Objetos Javascript: Em JavaScript, os Objetos são a estrutura de dados mais fundamental e versátil. Um objeto é uma coleção dinâmica de pares chave-valor, atuando como um contêiner que armazena dados (chamados Propriedades) e funções (chamados Métodos).

Objetos são o pilar da Programação Orientada a Objetos em JS e, diferentemente dos Primitivos, eles são copiados por Referência, o que os torna mutáveis.

1. Criação e Estrutura Básica

A maneira mais comum e direta de criar um objeto é usando a sintaxe de Literal de Objeto ({}).

A. O Literal de Objeto

Um objeto é definido por chaves ({}) contendo propriedades separadas por vírgulas.

JavaScript

const livro = {
  // Propriedade (Chave: Valor)
  titulo: "O Guia do Mochileiro",
  paginas: 42,
  
  // Método (Função associada ao objeto)
  resumo: function() {
    return `Livro: ${this.titulo}, com ${this.paginas} páginas.`;
  }
};

Atenção ao this: Dentro de um método, a palavra-chave this refere-se ao próprio objeto que está chamando o método.

2. Acesso e Manipulação de Propriedades

Existem duas formas principais de acessar ou modificar as propriedades de um objeto.

A. Notação de Ponto (Dot Notation)

É o método preferido por ser mais limpo e rápido, mas só funciona quando o nome da propriedade é conhecido e não contém caracteres especiais (como espaços ou hífens).

JavaScript

console.log(livro.titulo); // Acesso direto
livro.paginas = 43;        // Modificação

B. Notação de Colchetes (Bracket Notation)

É essencial quando:

  1. O nome da propriedade é armazenado em uma variável.
  2. O nome da propriedade contém espaços ou caracteres especiais.

JavaScript

let chave = "titulo";
console.log(livro[chave]); // Acesso dinâmico usando a variável 'chave'

livro["data de lançamento"] = 1979; // Adicionando propriedade com espaço
console.log(livro["data de lançamento"]);

C. Adicionar e Remover

  • Adicionar/Modificar: Atribua um valor à chave, mesmo que ela não exista.
  • Remover: Use o operador delete.

JavaScript

livro.autor = "Douglas Adams"; // Adiciona a propriedade 'autor'
delete livro.paginas;          // Remove a propriedade 'paginas'

3. Estruturas Avançadas de Objeto

A. Funções Construtoras e Protótipos

Antes do ES6, usávamos Funções Construtoras e o objeto prototype para criar “modelos” e herdar métodos, permitindo a reutilização de código entre instâncias.

JavaScript

function Personagem(nome) {
  this.nome = nome;
}
// Método herdado por todas as instâncias
Personagem.prototype.falar = function() {
  console.log(this.nome + " diz oi!");
};

const goku = new Personagem("Goku");
goku.falar();

B. Classes (ES6)

As Classes introduzidas no ES6 são uma sintaxe simplificada (syntactic sugar) sobre o mecanismo de protótipos. Elas tornam a criação de modelos de objeto e herança muito mais claras e intuitivas.

JavaScript

class Pessoa {
  // Inicializador das propriedades
  constructor(nome, idade) {
    this.nome = nome;
    this.idade = idade;
  }
  
  // Método da Classe
  apresentar() {
    console.log(`Sou ${this.nome}.`);
  }
}
const maria = new Pessoa("Maria", 25);
maria.apresentar();

✅ Conclusão Objetos Javascript

Objetos Javascript: Os objetos são o elemento unificador da linguagem, permitindo modelar entidades complexas ao combinar dados (propriedades) e comportamentos (métodos). Dominar a criação via Literal de Objeto, entender a diferença entre Notação de Ponto vs. Colchetes e compreender a sintaxe moderna de Classes é fundamental para desenvolver aplicações JavaScript robustas e orientadas a objetos.

Toda jornada tem um início, e o início para se tornar um desenvolvedor web é dominar as seguintes tecnologias, que você encontra aqui mesmo:

HTML
HTML
CSS
CSS
Javascript
JavaScript

E se você gosta do nosso conteúdo, não deixe de contribuir adquirindo os serviços e produtos dos nossos apoiadores e empresas que somos associados:

Hospedagem Hostinger
Ofertas Amazon
Amazon Prime
Author: Thiago Rossi
Com mais de 20 anos de jornada na tecnologia, minha trajetória evoluiu do ensino técnico à arquitetura de sistemas complexos. Hoje, foco minha expertise no desenvolvimento de soluções de Inteligência Artificial nativa e análise de dados públicos, utilizando o ecossistema PHP para transformar dados brutos em transparência e eficiência. Como autor e desenvolvedor, acredito na democratização do conhecimento. Essa visão resultou em uma biblioteca de mais de 530 artigos gratuitos, cobrindo desde a base do WebDev e Infraestrutura até os bastidores da indústria de Jogos e IA. No universo de Game Design, sou autor do livro "GDD – O Guia Definitivo" e documento ativamente meus processos através de DevLogs, unindo rigor técnico e criatividade em projetos desenvolvidos com GDevelop 5. Meu compromisso é conectar engenharia de ponta com as reais oportunidades do mercado de tecnologia.