Nas últimas aulas, aprendemos recursos modernos como Destructuring e Spread Operator, que deixam o código mais limpo e elegante.
Agora vamos conhecer um operador que ajuda a evitar um dos erros mais comuns do JavaScript: tentar acessar propriedades de algo que não existe. Esse operador é o Optional Chaining, representado por ?..
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender o problema que o Optional Chaining resolve
- Acessar propriedades de forma segura
- Evitar erros do tipo
Cannot read property - Usar Optional Chaining com objetos, arrays e funções
- Escrever código mais robusto
O problema: acessando algo que não existe
Veja o objeto abaixo:
const usuario = { nome: "Daniel", endereco: { cidade: "São Paulo" } }; Agora imagine tentar acessar uma propriedade que pode não existir:
console.log(usuario.endereco.rua); Isso retorna undefined, o que ainda é seguro. Mas se endereco não existir, o código quebra.
O erro clássico do JavaScript
const usuario2 = { nome: "Ana" };
console.log(usuario2.endereco.cidade);
endereco é undefined. Resolvendo com Optional Chaining
Com o Optional Chaining, podemos acessar propriedades de forma segura:
console.log(usuario2.endereco?.cidade); Se endereco não existir, o JavaScript simplesmente retorna undefined, sem quebrar o código.
console.log(usuario2.endereco?.cidade); // Saída será undefined Optional Chaining em níveis mais profundos
Você pode usar o operador em cadeias maiores:
const pedido = { cliente: { nome: "Carlos" } };
console.log(pedido.cliente?.endereco?.cidade); // Saída será undefined
Optional Chaining com arrays
Também é possível usar Optional Chaining ao acessar posições de arrays:
const produtos = ["Notebook", "Mouse"];
console.log(produtos[2]?.toUpperCase()); // Saída será undefined
Sem Optional Chaining, chamar métodos em algo inexistente causaria erro.
Optional Chaining com funções
O operador também funciona para chamadas de funções que podem não existir:
const api = { buscarDados() { return "Dados carregados"; } };
console.log(api.buscarDados?.()); // Saída será "Dados carregados"
const api2 = {};
console.log(api2.buscarDados?.()); // Saída será undefined
Quando usar Optional Chaining?
- Dados vindos de APIs
- Objetos com estrutura incerta
- Propriedades opcionais
- Código defensivo e seguro
Resumo da aula para nunca mais esquecer
- Optional Chaining evita erros ao acessar propriedades inexistentes
- Usa o operador
?. - Funciona com objetos, arrays e funções
- Torna o código mais seguro e robusto
Na próxima aula, vamos aprender sobre Nullish Coalescing (??) e lidar melhor com valores nulos.
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.
Você Sabia?
Mouse
O mouse foi criado em 9 de dezembro de 1968, por um americano chamado Douglas Engelbart, que o batizou de "XY Position Indicator for a Display System". Conheça a história do mouse clicando aqui.
Donkey Kong
A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.
PC com barulho?
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.
Final Fantasy X
O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.










