Digitacao de Codigo · TypeScript
Tagged Union
Exhaustive handling of a discriminated type.
Dificuldade: Intermediario · 15 Linhas · Licenca: public-domain
type Shape =
| { kind: 'circle'; radius: number }
| { kind: 'square'; side: number }
| { kind: 'rectangle'; width: number; height: number };
function area(shape: Shape): number {
switch (shape.kind) {
case 'circle':
return Math.PI * shape.radius ** 2;
Tempo0:00
Velocidade (WPM)0.0
Precisao100.0%
Erros0
Teclado Ao Vivo
Proxima Tecla: T | Ultima Tecla: -
Progresso: 0.0%
\
1
2
3
4
5
6
7
8
9
0
'
«
Q
W
E
R
T
Y
U
I
O
P
+
´
A
S
D
F
G
H
J
K
L
Ç
º
Z
X
C
V
B
N
M
,
.
-
Espaco
Placar
Sem resultados ainda.