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
- Escreva sua solução no editor.
- Executar mostra a saída no terminal, para você experimentar.
- Testar confere a solução. Passou em tudo? Exercício concluído!
Carregando editor…
digite "ajuda" para ver os comandos
dev@devjr:~/ts-exaustividade$