Na aula anterior, aprendemos sobre Optional Chaining (?.), que nos ajuda a acessar propriedades de forma segura, evitando erros quando algo não existe.

Agora vamos aprender um operador que costuma andar lado a lado com ele: o Nullish Coalescing, representado por ??.

🎯 Objetivo da aula

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

  • Entender o que é Nullish Coalescing
  • Definir valores padrão de forma correta
  • Diferenciar ?? de ||
  • Lidar melhor com null e undefined
  • Escrever código mais previsível

O problema dos valores “falsy”

Em JavaScript, alguns valores são considerados falsy, como:

  • false
  • 0
  • "" (string vazia)
  • null
  • undefined

O problema é que, muitas vezes, 0 ou "" são valores válidos — e não deveriam ser substituídos.

Usando o operador || (problema)

Veja o exemplo usando o operador ||:

 const quantidade = 0; const resultado = quantidade || 10;

console.log(resultado); // Saída será 10

Aqui, 0 é um valor válido, mas foi ignorado por ser falsy.

Entrando o Nullish Coalescing (??)

O operador ?? resolve esse problema. Ele só usa o valor da direita quando o da esquerda é null ou undefined.

 const quantidade = 0; const resultado = quantidade ?? 10;

console.log(resultado); // Saída será 0
O ?? ignora apenas null e undefined.

Comparando || e ??

Veja a diferença na prática:

 console.log(0 || 5); // Saída será 5 console.log(0 ?? 5); // Saída será 0

console.log("" || "Texto"); // Saída será "Texto"
console.log("" ?? "Texto"); // Saída será ""

console.log(null ?? "Padrão"); // Saída será "Padrão"
console.log(undefined ?? "Padrão"); // Saída será "Padrão"

Usando ?? com Optional Chaining

Esses dois operadores costumam ser usados juntos:

 const usuario = { nome: "Daniel" };

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

console.log(cidade); // Saída será "Cidade não informada"

Aqui:

  • O ?. evita erro ao acessar endereco
  • O ?? define um valor padrão adequado

Quando usar Nullish Coalescing?

  • Valores opcionais vindos de APIs
  • Configurações com valores padrão
  • Campos numéricos que podem ser zero
  • Strings que podem ser vazias
Não confunda ?? com ||. Eles resolvem problemas parecidos, mas com regras diferentes.

Resumo da aula para nunca mais esquecer

  • Nullish Coalescing usa o operador ??
  • Ele só considera null e undefined
  • Evita substituir valores válidos como 0 e ""
  • Funciona muito bem junto com Optional Chaining

Na próxima etapa, vamos começar a aplicar esses conceitos em exercícios práticos e cenários reais.


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?

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.


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.


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!


O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.


Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.