0Pricing
TypeScript Academy · Aula

typeof, igualdade e redução por veracidade

Use typeof, igualdade estrita e veracidade para reduzir tipos de união sem conversões inseguras.

typeof, igualdade e redução por veracidade é uma aula grátis de TypeScript Academy no CoddyKit. Esta é a aula 1 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de TypeScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de TypeScript Academy inclui 3 aulas no total.

Introdução

Objetivo: refinar tipos de união abrangentes para tipos exatos usando verificação de tipo, igualdade estrita e veracidade. Isso permite acessar propriedades e métodos com segurança.

Refinamento por verificação de tipo

Verificação de tipo refina tipos primitivos (cadeia de caracteres, número, booleano, inteiro grande, símbolo e indefinido). Use-a para criar ramificações seguras.

function printLen(x: string | number) {
  if (typeof x === "string") {
    console.log(x.length); // x is string
  } else {
    console.log(x.toFixed(2)); // x is number
  }
}

printLen("TS");
printLen(3.14);

Igualdade estrita

Prefira ===/!== para um refinamento preciso; evite ==, que converte valores implicitamente e confunde tanto as pessoas quanto o compilador.

function greet(x: string | null) {
  if (x !== null) {
    // x is string here
    console.log("Hello " + x.toUpperCase());
  } else {
    console.log("No name");
  }
}

greet("Ada");
greet(null);

Refinamento por veracidade

Veracidade também refina tipos, mas tenha cuidado: "" e 0 são avaliados como falsos, embora sejam valores válidos. Use verificações estritas quando precisar distingui-los.

function show(v: string | 0 | "" | null | undefined) {
  if (v) {
    // v is string here (non-empty)
    console.log("value:", v);
  } else {
    // v is "", 0, null, or undefined
    console.log("empty");
  }
}

show("ok");
show("");
show(0);

Combinação de verificações

Combine verificações para proteger acessos aninhados. Para ter um controle mais preciso, prefira u !== null && u !== undefined quando 0/"" forem casos válidos.

type MaybeUser = { name: string } | null | undefined;

function hi(u: MaybeUser) {
  if (u && u.name) {
    console.log("Hi " + u.name);
  } else {
    console.log("No user");
  }
}

hi({ name: "Lin" });
hi(null);

Diretrizes

Diretrizes:

  • Use a verificação de tipo para tipos primitivos.
  • Use ===/!== para evitar conversões implícitas.
  • A veracidade é concisa; evite-a quando cadeias vazias ou zero tiverem significado.

Verificação de refinamento

Verificação rápida: qual verificação refina corretamente um valor para o tipo cadeia de caracteres?

Recapitulação

Recapitulação: refine os tipos com verificação de tipo, igualdade estrita e veracidade. Prefira verificações explícitas quando 0/"" forem valores válidos.

Perguntas Frequentes

A aula “typeof, igualdade e redução por veracidade” é grátis?

Sim — o texto completo de “typeof, igualdade e redução por veracidade” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de TypeScript Academy, atualize para CoddyKit PRO. O curso de TypeScript Academy inclui 3 aulas no total.

O que vou aprender em “typeof, igualdade e redução por veracidade”?

Use typeof, igualdade estrita e veracidade para reduzir tipos de união sem conversões inseguras. Você pratica TypeScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar TypeScript Academy?

Nenhuma experiência prévia é necessária. TypeScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 3.

Quanto tempo leva a aula “typeof, igualdade e redução por veracidade”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de TypeScript Academy?

Sim. Cada aula de TypeScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. typeof, igualdade e redução por veracidade
  2. in, instanceof e uniões discriminadas
  3. Exaustividade com never (introdução)
← Voltar para TypeScript Academy