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
*
-
=
F
G
Ğ
I
O
D
R
N
H
P
Q
W
'
U
İ
E
A
Ü
T
K
M
L
Y
Ş
X
J
Ö
V
C
Ç
Z
S
B
.
,
;
/
Espaco
Placar
Sem resultados ainda.