JavaScript · Avançado · Inglês · Técnico
static block
Bloco static { } dentro de uma classe, executado uma vez quando a classe é definida. Permite lógica de inicialização complexa e acesso a campos privados estáticos.
Onde usar
Usado quando um campo static precisa de vários passos, como try/catch ou a leitura de outros campos para calcular um valor. Em code review, substitui código solto depois da classe.
Em código
class Reg {
static #itens = new Map();
static {
Reg.#itens.set('a', 1);
}
static ler(k) { return Reg.#itens.get(k); }
}
console.log(Reg.ler('a')); // 1Exemplos
I used a static block to fill the registry when the class loads.
Usei um static block para preencher o registro quando a classe carrega.
The static block runs once, when the class is defined.
O static block roda uma vez, quando a classe é definida.
Cuidado
Confundir com um método static: o bloco não tem nome, não recebe argumentos e roda só uma vez.
Sinônimos
bloco de inicialização estático