typestar

Throttle tipado en TypeScript

Throttle con la firma de la función envuelta preservada.

function throttle<A extends unknown[]>(
  fn: (...args: A) => void,
  limit: number,
): (...args: A) => void {
  let ready = true;
  return (...args: A) => {
    if (!ready) return;
    ready = false;
    fn(...args);
    setTimeout(() => {
      ready = true;
    }, limit);
  };
}

Palabras clave y builtins usados aquí

El intento, en números

Líneas
14
Caracteres a escribir
246
Tokens
82
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 47 segundos.

Escribe este fragmento

Paso 3 de 5 en Tiempo y memoria; paso 16 de 19 en Clases y patrones.

← Anterior Siguiente →