Arrays: Listas de Coisas

O que vais aprender nesta aula:

  • O que é um Array (Lista)
  • Como criar uma lista: let lista = []
  • Aceder a elementos pelo índice (0, 1, 2...)
  • Alterar e saber o tamanho da lista (length)

🧠 Teoria (com Analogia e Contexto Real)

Até agora, guardávamos um valor por cada variável. Mas e se tivermos uma lista de compras com 50 itens? Vamos criar 50 variáveis?

💊 Analogia da Caixa de Comprimidos

Um Array é como aquelas caixas de comprimidos semanais:

  • É UM objeto físico (uma variável).
  • Tem vários compartimentos.
  • Cada compartimento tem um número (índice) para saberes onde está o quê.

Porque é que isto importa? Redes sociais = Lista de posts. Loja online = Lista de produtos. Música = Lista de canções. Quase tudo na web são listas!

💻 Prática (Orientada e Progressiva)

Vamos organizar a nossa informação:

Exemplo 1: Criar e Aceder

Os índices começam SEMPRE em ZERO. O primeiro item é o 0.

let frutas = ["Maçã", "Banana", "Laranja"];

console.log(frutas[0]); // Maçã
console.log(frutas[1]); // Banana
console.log(frutas[2]); // Laranja
console.log(frutas[3]); // undefined (não existe)

Exemplo 2: Alterar e Contar

let cores = ["Azul", "Verde"];

// Mudar o valor
cores[1] = "Amarelo"; // Agora é ["Azul", "Amarelo"]

// Saber o tamanho
console.log(cores.length); // 2
💡
Dica Pro: Para pegares sempre o último item de uma lista (sem saberes o tamanho), usa: lista[lista.length - 1].

✅ Verificação de Conhecimento

1. Qual é o índice do PRIMEIRO elemento de um array?

1
0
-1

2. Se eu tiver `let x = [10, 20, 30]`, o que devolve `x.length`?

3
2 (porque começa no 0)
30

3. Posso misturar tipos de dados num array (ex: números e texto)?

Não, dá erro e o computador explode.
Sim, o JavaScript permite tudo! (ex: `[1, "Olá", true]`)
Só se for numa sexta-feira.

🧩 Desafio Prático

A Lista de Convidados VIP

Cria um array com 3 nomes de amigos.

Depois, substitui o segundo nome (índice 1) por "Batman".

Mostra a lista final na consola.

let convidados = ["Ana", "Rui", "Hugo"];
// O teu código aqui...
Mostrar Solução
let convidados = ["Ana", "Rui", "Hugo"];

// Substituir o Rui (índice 1)
convidados[1] = "Batman";

console.log(convidados);
// Resultado: ["Ana", "Batman", "Hugo"]

📌 Explicação: Acedemos à posição 1 e atribuímos um novo valor, apagando o que lá estava antes.