0dias seguidos0XP

Checagem exaustiva com never

Avançado+35 XP

Modele formas geométricas com uma discriminated union pelo campo tipo:

  • { tipo: "circulo"; raio: number }
  • { tipo: "retangulo"; largura: number; altura: number }
  • { tipo: "triangulo"; base: number; altura: number }

Implemente area(f: Forma): number com switch e, no default, faça a checagem exaustiva: const _exaustivo: never = f;. Assim, se alguém adicionar uma nova forma e esquecer de tratar, o TypeScript acusa erro.

Como resolver
  1. Escreva sua solução no editor.
  2. Executar mostra a saída no terminal, para você experimentar.
  3. Testar confere a solução. Passou em tudo? Exercício concluído!
index.ts · carregando TypeScript…
Carregando editor…
digite "ajuda" para ver os comandos
dev@devjr:~/ts-exaustividade$