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
nulleundefined - Escrever código mais previsível
O problema dos valores “falsy”
Em JavaScript, alguns valores são considerados falsy, como:
false0""(string vazia)nullundefined
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
?? 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 acessarendereco - 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
?? com ||. Eles resolvem problemas parecidos, mas com regras diferentes. Resumo da aula para nunca mais esquecer
- Nullish Coalescing usa o operador
?? - Ele só considera
nulleundefined - Evita substituir valores válidos como
0e"" - 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.
Você Sabia?
PDP-1
O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.
Tetris
Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
Mario em Donkey Kong
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.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".










