Skip to content

once ​

Cria uma função que só pode ser executada uma vez; chamadas subsequentes retornam o resultado da primeira execução.

Sintaxe ​

typescript
once<T extends (...args: any[]) => any>(callback: T): (...args: Parameters<T>) => ReturnType<T>

Parâmetros ​

NomeTipoDescrição
callbackTFunção a ser executada apenas uma vez.

Retorno ​

TipoDescrição
(...args: Parameters<T>) => ReturnType<T>Função que executa callback apenas na primeira chamada.

Exemplo ​

typescript
let count = 0;
const incrementOnce = once(() => ++count);
incrementOnce(); // 1
incrementOnce(); // 1

Notas ​

  • Lança um TypeError se o argumento não for função.
  • Útil para inicializações, eventos únicos ou operações idempotentes.

Referências ​

Released under the MIT License.