ExpertiDict

TypeScript · Intermediário · Inglês · Técnico

const enum

/kɑnst ˈiːnʌm/palavra-chave

Enum declarado com const, cujos usos são substituídos pelos valores literais na compilação, sem gerar o objeto em runtime.

Onde usar

Aparece em PR como micro-otimização de bundle. O risco é com transpiladores que compilam arquivo a arquivo, que não enxergam o enum declarado em outro arquivo; por isso muitos projetos evitam o recurso.

Em código

const enum Dir { Cima, Baixo }
const d = Dir.Baixo;
// JS gerado: const d = 1 /* Dir.Baixo */;

Exemplos

Switch to const enum so the object is inlined.

Troque para const enum para o objeto ser inlinado.

const enum breaks when the build tool compiles file by file.

const enum quebra quando a ferramenta de build compila arquivo por arquivo.

Cuidado

Não é um enum imutável: const enum é apagado na compilação, e por isso não dá para iterar sobre ele nem consultá-lo em runtime.

Sinônimos

enum constante

Veja também

Todos os termos de TypeScript