Ako efektívne používať setInterval() v Node.js?

Ako Efektivne Pouzivat Setinterval V Node Js



V Node.js, vstavaný 'setInterval()' metóda vykoná blok kódu nekonečne krát po zadanom časovom intervale. Táto metóda pomáha pri plánovaní programu vykonávaním bežnej úlohy nepretržite po určitom oneskorení podľa požiadaviek. Vykonáva definovanú úlohu pomocou funkcie spätného volania. Keď je požadovaná úloha definovaná vo funkcii spätného volania, bude sa automaticky vykonávať donekonečna bez zapojenia používateľa.

Tento príspevok vysvetlí efektívne použitie setInterval() v node.js.

Aké je použitie metódy „setInterval()“ v Node.js?

The 'setInterval()' metóda sa používa na vykonanie bloku kódu opakovane po zadanom časovom oneskorení. Definovanú úlohu vykonáva opakovane po zadanom časovom intervale, kým používateľ nezastaví jej vykonávanie pomocou 'clearInterval()' metóda.







Syntax
Použitie metódy „setInterval()“ závisí od jej zovšeobecnenej syntaxe, ktorá je napísaná nižšie:



konšt intervalId = setInterval ( func , [ meškanie , arg1 , agr2 , ... , argN ] ) ;

Vyššie uvedená metóda „setInterval()“ funguje na nasledujúcich parametroch:



  • func : Označuje funkciu spätného volania, ktorá sa vykonáva opakovane nekonečne veľakrát po zadanom časovom intervale.
  • meškanie : Určuje počet milisekúnd, po ktorých sa vykoná definovaná funkcia spätného volania.
  • arg1, arg2,... argN : Predstavuje dodatočné argumenty, ktoré prechádzajú do zadanej funkcie spätného volania.

Návratová hodnota: ' setInterval() ” vráti nenulový „intervalId“, ktorý môže používateľ odovzdať inej metóde „clearInterval()“, aby zastavil nekonečné vykonávanie funkcie spätného volania.





Využime vyššie uvedený spôsob prakticky.

Príklad 1: Použite metódu „setInterval()“ na vykonanie funkcie na nekonečné časy
Tento príklad aplikuje metódu „setInterval()“ na vykonanie funkcie nekonečne krát:



const setTimeID = setInterval ( myFunc, 1000 ) ;
funkciu myFunc ( ) {
konzola.log ( 'Vitajte v Linuxhint!' )
}

Vo vyššie uvedenom útržku kódu:

  • Premenná „setTimeID“ využíva „ setInterval() ” metóda na vykonanie danej funkcie spätného volania po zadanom oneskorení.
  • V definícii funkcie spätného volania je „ console.log() ” metóda zobrazí citovaný príkaz nekonečne krát v konzole po danom časovom intervale.

Poznámka : Napíšte vyššie uvedené riadky kódu do súboru „.js“ projektu Node.js.

Výkon
Teraz spustite súbor „.js“ pomocou kľúčového slova „node“:

aplikácia uzla. js

Je vidieť, že výstup zobrazuje zadaný textový príkaz opakovane po zadanom časovom oneskorení:

Príklad 2: Použite metódu „setInterval()“ na vykonanie funkcie na konečné časy
Tento príklad využíva metódu „setInterval()“ na vykonanie funkcie v konečných časoch:

nechaj počítať = 0 ;
konšt setTimeID = setInterval ( myFunc , 1000 ) ;
funkciu myFunc ( ) {
konzoly. log ( 'Linux!' ) ;
počítať ++;
ak ( počítať === 4 ) {
konzoly. log ( ' \n Daný interval bol zastavený po 4. popravách \n ' ) ;
clearInterval ( setTimeID ) ;
}
}

Vo vyššie uvedených riadkoch kódu:

  • Po prvé, kľúčové slovo „nech“ deklaruje „ počítať ” premenná s číselnou hodnotou.
  • Ďalej, „ setInterval() ” metóda vykoná zadanú funkciu po danom oneskorení.
  • V tejto funkcii sa „ console.log() ” vytlačí zadaný príkaz v konzole.
  • Potom zvýšte premennú „count“ pomocou 'počítať++' vyhlásenie.
  • Teraz, „ ak ” definuje blok kódu, v ktorom metóda “console.log()” zobrazí daný príkaz a 'clearInterval()' s vráteným id metódy „setInterval()“ zastaví vykonávanie funkcie, keď je splnená podmienka „if“.

Výkon
Spustite súbor „.js“ pomocou nasledujúceho príkazu:

aplikácia uzla. js

Dá sa pozorovať, že konkrétna funkcia sa vykonáva v obmedzenom počte krát:

Príklad 3: Použitie metódy „setInterval()“ s argumentmi
Tento príklad používa metódu „setInterval()“ spolu s parametrami, ktoré sa odovzdávajú zadanej funkcii spätného volania:

nechaj počítať = 0 ;
konšt setTimeID = setInterval ( myFunc , 1000 , 'linux' ) ;
funkciu myFunc ( arg ) {
konzoly. log ( 'Ahoj ' + arg ) ;
počítať ++;
ak ( počítať === 4 ) {
konzoly. log ( ' \n Daný interval bol zastavený po 4. popravách \n ' ) ;
clearInterval ( setTimeID ) ;
}
}

Vo vyššie uvedených riadkoch kódu:

  • ' setInterval() “metóda špecifikuje argument nasledujúci za “ meškanie parameter “.
  • Vo funkcii spätného volania sa špecifikovaný argument odovzdáva pomocou „ arg “argument.
  • Potom sa „ console.log() ” metóda vypíše hodnotu odovzdaného argumentu spolu s reťazcom v úvodzovkách.

Výkon
Spustite súbor „.js“:

aplikácia uzla. js

Tu výstup ukazuje, že funkcia spätného volania sa vykonáva na konečný čas a zobrazuje hodnotu argumentu spolu so zadaným reťazcom v konzole:

Aké sú rozdiely medzi setTimeout() a setInterval()?

Táto časť zdôrazňuje kľúčové rozdiely medzi metódou „setTimeout()“ a „setInterval()“:

Podmienky SetTimeout() SetInterval()
Cieľ ' setTimeout() ” metóda vykoná požadovaný blok kódu po zadanom oneskorení (ms), iba raz. The 'setInterval()' metóda vykoná požadovaný blok kódu nekonečne krát po zadanom časovom intervale alebo „oneskorení“.
Syntax setTimeout(funkcia spätného volania, oneskorenie (ms)) setInterval(funkcia spätného volania, oneskorenie (ms))
Počet poprav Táto metóda vykoná funkciu spätného volania iba raz po danom oneskorení. Táto metóda vykoná funkciu spätného volania neobmedzený počet krát, kým sa jej vykonávanie nezastaví pomocou „clearInterval()“.
Vymazať interval Na zastavenie vykonávania špecifikovanej funkcie používa metódu „clearTimeout()“. Používa metódu „clearInterval()“ na zastavenie vykonávania funkcie spätného volania.

To je všetko o použití setInterval() v Node.js.

Záver

Ak chcete efektívne použiť metódu „setInterval()“ v Node.js, definujte funkciu spätného volania ako jej parameter, ktorý vykonáva definovanú úlohu opakovane po pevnom oneskorení. Vykonávanie definovanej funkcie spätného volania sa nikdy nezastaví automaticky, kým ho používateľ nezastaví pomocou metódy „clearInterval()“. Okrem toho je možné túto metódu použiť aj na získavanie hodnôt premenných nekonečne krát po danom oneskorení. Tento príspevok prakticky vysvetlil efektívne použitie setInterval() v Node.js.