Javascript setTimeout ()

V tomto tutoriáli sa pomocou príkladov dozviete o metóde setTimeout () JavaScriptu.

setTimeout()Metóda sa vykoná blok kódu po stanovenú dobu. Metóda vykoná kód iba raz.

Bežne používaná syntax jazyka JavaScript setTimeout je:

 setTimeout(function, milliseconds);

Jeho parametre sú:

  • function - funkcia obsahujúca blok kódu
  • milisekundy - čas, po ktorom je funkcia vykonaná

setTimeout()Metóda vráti intervalID , čo je kladné celé číslo.

Príklad 1: Zobrazenie textu raz za 3 sekundy

 // program to display a text using setTimeout method function greet() ( console.log('Hello world'); ) setTimeout(greet, 3000); console.log('This message is shown first');

Výkon

Táto správa sa zobrazuje ako prvý  Hello world

Vo vyššie uvedenom programe setTimeout()metóda volá greet()funkciu po 3 000 milisekundách ( 3 sekundách).

Preto program zobrazí text Hello world iba raz po 3 sekundách.

Poznámka : Táto setTimeout()metóda je užitočná, ak chcete po určitom čase vykonať blok raz. Napríklad zobrazenie správy používateľovi po stanovenom čase.

setTimeout()Metóda vracia interval id. Napríklad,

 // program to display a text using setTimeout method function greet() ( console.log('Hello world'); ) let intervalId = setTimeout(greet, 3000); console.log('Id: ' + intervalId); 

Výkon

 Id: 3 Ahoj svet

Príklad 2: Čas zobrazenia každé 3 sekundy

 // program to display time every 3 seconds function showTime() ( // return new date and time let dateTime= new Date(); // returns the current local time let time = dateTime.toLocaleTimeString(); console.log(time) // display the time after 3 seconds setTimeout(showTime, 3000); ) // calling the function showTime();

Výkon

 17:45:39 17:45:43 17:45:47 17:45:50… 

Vyššie uvedený program zobrazuje čas každé 3 sekundy.

setTimeout()Spôsob volá funkciu iba raz po uplynutí časového intervalu (tu 3 sekundy).

Avšak vo vyššie uvedenom programe, pretože sa táto funkcia sama volá, program zobrazuje čas každé 3 sekundy.

Tento program beží neurčito (až do vyčerpania pamäte).

Poznámka : Ak potrebujete vykonať funkciu viackrát, je lepšie použiť túto setInterval()metódu.

JavaScript clearTimeout ()

Ako ste videli vo vyššie uvedenom príklade, program vykoná blok kódu po zadanom časovom intervale. Ak chcete zastaviť toto volanie funkcie, môžete použiť túto clearTimeout()metódu.

Syntax clearTimeout()metódy je:

 clearTimeout(intervalID);

Tu intervalIDje návratová hodnota setTimeout()metódy.

Príklad 3: Použite metódu clearTimeout ()

 // program to stop the setTimeout() method let count = 0; // function creation function increaseCount()( // increasing the count by 1 count += 1; console.log(count) ) let id = setTimeout(increaseCount, 3000); // clearTimeout clearTimeout(id); console.log('setTimeout is stopped.');

Výkon

 setTimeout je zastavený.

Vo vyššie uvedenom programe sa setTimeout()metóda používa na zvýšenie hodnoty počítania po 3 sekundách. Avšak clearTimeout()metóda zastaví volanie funkcie tejto setTimeout()metódy. Počet sa teda nezvýši.

Poznámka : clearTimeout()Metódu obvykle používate, keď potrebujete zrušiť setTimeout()volanie metódy skôr, ako k nej dôjde.

Metóde môžete tiež odovzdať ďalšie argumenty setTimeout(). Syntax je:

 setTimeout(function, milliseconds, parameter1,… .paramenterN);

Pri odovzdaní ďalšie parametre k setTimeout()metóde, tieto parametre ( parameter1, parameter2bude atď) musí byť odovzdaný do zadaného funkcií .

Napríklad,

 // program to display a name function greet(name, lastName) ( console.log('Hello' + ' ' + name + ' ' + lastName); ) // passing argument to setTimeout setTimeout(greet, 1000, 'John', 'Doe');

Výkon

 Dobrý deň John Doe

Vo vyššie uvedenom programe sú dva parametre Johna Doesú odovzdané setTimeout()metóde. Tieto dva parametre sú argumenty, ktoré sa odovzdajú funkcii (tu, greet()funkcia), ktorá je definovaná vo vnútri setTimeout()metódy.

Odporúčané čítanie: JavaScript async () a await ()

Zaujímavé články...