Okamžité provedení setInterval pomocí JavaScriptu

Zaměstnáváme setInterval protože průzkum stavu byl v průběhu let opravdu užitečný. Bez ohledu na to, zda probíhá dotazování na straně klienta nebo serveru, reaktivita na konkrétní podmínky pomáhá zlepšit uživatelskou zkušenost. Jeden úkol, který jsem nedávno potřeboval dokončit, vyžadoval můj setInterval okamžitě spustit a poté pokračovat ve spuštění.

Konvenční a nejlepší způsob, jak okamžitě zavolat funkci na začátku setInterval je ve skutečnosti zavolat funkci před počátečním setInterval ` se nazývá:

myFunction();
setInterval(myFunction, 1000); // Every second

Pokud opravdu chcete izolovat volání funkce setInterval , můžete použít tento trik se samospouštěcí funkcí, která se sama vrátí:

// Use a named function ...
setInterval(function myFunction() {
  // Do some stuff
  // ...

  // ... then return this function
  return myFunction;

// () self-executes the function
}(), 3000)

Nevýhodou tohoto vzoru je, že způsobuje problém s údržbou, kdy další vývojář nechápe, co se děje.

Údržba je důležitou součástí dobrého inženýra, takže by měla být vyžadována přinejmenším dokumentace ve formě komentářů nebo pomocné funkce. Pokud opravdu chcete mít samospouštěcí setInterval , máš to!