ANÚNCIO

~/questoes/programacao

O que é Type Inference em TypeScript?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Questão 1 Não respondida

O que é Type Inference em TypeScript?

Aula de referência TypeScript: tutorial para completos iniciantes
Para fixar

Type Inference em TypeScript: Dedução Automática de Tipos

Conceito central

Type Inference é a capacidade do TypeScript deduzir automaticamente qual é o tipo de uma variável observando o valor que você atribui a ela, sem precisar escrever uma anotação de tipo explícita. Essa é uma das características mais práticas do TypeScript porque economiza digitação e torna o código mais limpo.

Por que essa resposta faz sentido

TypeScript analisa o valor atribuído à variável e descobre seu tipo automaticamente. Por exemplo, se você escreve `let idade = 25`, TypeScript entende que `idade` é do tipo `number` sem você precisar escrever `let idade: number = 25`. Isso é especialmente útil em situações onde o tipo é óbvio pelo contexto.

Armadilhas comuns

  • Confundir type inference com type annotations. Annotations são quando você escreve o tipo explicitamente (`: number`), enquanto inference é quando TypeScript deduz sozinho.
  • Achar que type inference funciona em todas as situações. Às vezes TypeScript não consegue deduzir o tipo e você precisa anotar explicitamente, especialmente com funções que retornam valores complexos.
  • Usar `any` quando TypeScript não consegue inferir o tipo, em vez de anotar o tipo corretamente. Isso anula a proteção que o TypeScript oferece.

Entenda as alternativas

A

Criar tipos customizados combinando múltiplos tipos primitivos é um conceito diferente, relacionado a tipos customizados, interfaces e unions. Isso não é o mesmo que type inference.

B

Type inference justamente elimina a necessidade de especificar manualmente o tipo de cada variável. Se você precisa especificar tudo manualmente, você está usando type annotations, não type inference.

C

Essa é a definição correta. Type inference permite que TypeScript descubra o tipo de forma automática, tornando o código mais conciso quando o tipo é evidente pelo valor atribuído.

D

Converter TypeScript em JavaScript é a compilação, um processo separado. Type inference acontece durante a análise de tipos, não durante a compilação final para JavaScript.

Dica prática: Teste isso no seu editor: escreva `let nome = 'João'` e passe o mouse sobre a variável. Você verá que TypeScript automaticamente identificou que `nome` é do tipo `string`. Agora tente fazer `nome = 123` e veja o erro. Esse é o type inference em ação, economizando você de escrever `: string` mas ainda protegendo o código.

Revise pensando: Se você escreve `let ativo = true`, qual é o tipo que TypeScript deduz para a variável `ativo` sem você precisar escrever nada além disso?