Objetos: O Mundo Real no Código

O que vais aprender nesta aula:

  • O que é um Objeto Literal: {}
  • Pares Chave: Valor (Propriedades)
  • Aceder a dados com ponto . e colchetes []

🧠 Teoria (com Analogia e Contexto Real)

Arrays são bons para listas simples, mas e se quisermos descrever uma pessoa? Uma pessoa não é uma lista numerada [0, 1]. Uma pessoa tem nome, idade, morada...

📇 Analogia do Cartão de Cidadão

Um Objeto é como o teu Cartão de Cidadão.

Não procuras o "dado número 2". Procuras pelo Nome, ou pela Data de Nascimento.

  • Chave (Key): O rótulo (ex: "Nome").
  • Valor (Value): O conteúdo (ex: "Sandro").

💻 Prática (Orientada e Progressiva)

Vamos criar o nosso boneco virtual:

Exemplo 1: Criar um Objeto

let jogador = {
    nome: "Cristiano",
    equipa: "Portugal",
    golos: 800,
    ativo: true
};

Exemplo 2: Ler Dados (Dot Notation)

A forma mais comum de ler é com o ponto final.

console.log(jogador.nome);   // "Cristiano"
console.log(jogador.golos);  // 800

Exemplo 3: Alterar Dados

// Ele marcou mais um golo!
jogador.golos = 801;

// Mudou de equipa
jogador.equipa = "Al-Nassr";

console.log(jogador);
// { nome: "Cristiano", equipa: "Al-Nassr", golos: 801, ativo: true }

✅ Verificação de Conhecimento

1. Qual o símbolo usado para criar um Objeto?

Colchetes []
Chaves {}
Parênteses ()

2. Num objeto `carro = { cor: "azul" }`, o que é "cor"?

O Valor.
A Chave (ou Propriedade).
O índice.

3. Posso guardar um Array dentro de um Objeto?

Sim, claro! (ex: lista de amigos).
Não, é proibido misturar.
Sim, mas só se o array estiver vazio.

🧩 Desafio Prático

Perfil de Utilizador

1. Cria um objeto chamado eu com: nome (teu nome) e idade.

2. Mostra na consola uma frase completa usando essas propriedades.

Exemplo: "Olá, sou o Sandro e tenho 30 anos."

let eu = {
    // ...
};

console.log("Olá, sou o " + ...);
Mostrar Solução
let eu = {
    nome: "Sandro",
    idade: 36
};

console.log("Olá, sou o " + eu.nome + " e tenho " + eu.idade + " anos.");

📌 Explicação: Acedemos a cada "gaveta" do objeto usando o ponto.