Nas últimas aulas, aprendemos três recursos muito importantes do JavaScript moderno: Optional Chaining (?.), Nullish Coalescing (??) e Spread Operator (...).

Agora é hora de ver esses conceitos funcionando em situações reais, do tipo que aparecem todos os dias em aplicações web.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Usar Optional Chaining com segurança em dados incertos
  • Aplicar Nullish Coalescing para definir valores padrão corretos
  • Usar Spread Operator para copiar e combinar dados
  • Combinar esses recursos em cenários reais

Exemplo 1 — Dados vindos de uma API

Imagine um objeto retornado por uma API, onde nem todas as informações são garantidas:

 const respostaApi = { usuario: { nome: "Daniel" } }; 

Acessando dados com segurança:

 const cidade = respostaApi.usuario?.endereco?.cidade ?? "Cidade não informada";

console.log(cidade); // Saída será "Cidade não informada"
Esse padrão é extremamente comum ao trabalhar com APIs.

Exemplo 2 — Configurações do sistema

Suponha que um sistema tenha configurações opcionais:

 const config = { tema: "dark", itensPorPagina: 0 }; 

Definindo valores padrão corretamente:

 const itens = config.itensPorPagina ?? 10;

console.log(itens); // Saída será 0

Aqui, 0 é um valor válido e não deve ser substituído.

Exemplo 3 — Atualizando objetos com Spread Operator

Imagine que você precise atualizar dados de um usuário sem alterar o objeto original:

 const usuario = { nome: "Daniel", idade: 30 }; 
 const usuarioAtualizado = { ...usuario, idade: 31 };

console.log(usuario);
// Saída será { nome: "Daniel", idade: 30 }

console.log(usuarioAtualizado);
// Saída será { nome: "Daniel", idade: 31 }

Exemplo 4 — Juntando dados de formulários

Muito comum em formulários web:

 const dadosPessoais = { nome: "Ana", email: "ana@email.com" };

const endereco = {
cidade: "São Paulo",
estado: "SP"
};

const cadastroCompleto = {
...dadosPessoais,
...endereco
};

console.log(cadastroCompleto);
// Saída será { nome: "Ana", email: "ana@email.com
", cidade: "São Paulo", estado: "SP" }

Exemplo 5 — Funções com dados opcionais

Função que recebe um objeto de opções:

 function criarMensagem(opcoes) { const nome = opcoes?.nome ?? "Visitante"; const idade = opcoes?.idade ?? "não informada";

return nome + " tem idade " + idade;
}

console.log(criarMensagem({ nome: "Carlos", idade: 25 }));
// Saída será "Carlos tem idade 25"

console.log(criarMensagem({ nome: "Maria" }));
// Saída será "Maria tem idade não informada"

console.log(criarMensagem());
// Saída será "Visitante tem idade não informada"
Esse padrão evita várias verificações com if.

Resumo mental: quando usar cada um

  • ?. → quando algo pode não existir
  • ?? → quando null ou undefined são esperados
  • ... → quando precisa copiar ou combinar dados

Resumo da aula para nunca mais esquecer

  • Optional Chaining evita erros ao acessar dados incertos
  • Nullish Coalescing define valores padrão corretamente
  • Spread Operator copia e combina estruturas
  • Esses recursos são muito usados juntos em código real

Na próxima aula, vamos entrar em um novo capítulo do JavaScript e entender assincronicidade: como o JavaScript lida com tarefas que não acontecem imediatamente.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.


O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.


Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.