Javascript setTimeout ()

U ovom ćete uputstvu uz primjere naučiti o JavaScript metodi setTimeout ().

setTimeout()Metoda izvršava blok koda nakon određenog vremena. Metoda izvršava kôd samo jednom.

Sintaksa JavaScript setTimeout koja se najčešće koristi je:

 setTimeout(function, milliseconds);

Njegovi su parametri:

  • funkcija - funkcija koja sadrži blok koda
  • milisekunde - vrijeme nakon kojeg se funkcija izvršava

setTimeout()Metoda vraća intervalID , što je pozitivni cijeli broj.

Primjer 1: Prikažite tekst jednom nakon 3 sekunde

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

Izlaz

Ova poruka se prikazuje prvi  Hello World

U gornjem programu setTimeout()metoda poziva greet()funkciju nakon 3000 milisekundi ( 3 sekunde).

Stoga program prikazuje tekst Hello world samo jednom nakon 3 sekunde.

Napomena : setTimeout()Metoda je korisna kada želite izvršiti blok jednom nakon nekog vremena. Na primjer, prikazivanje poruke korisniku nakon navedenog vremena.

setTimeout()Metoda vraća intervala ID. Na primjer,

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

Izlaz

 Id: 3 Pozdrav svijete

Primjer 2: Prikaz vremena svake 3 sekunde

 // 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();

Izlaz

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

Gornji program prikazuje vrijeme svake 3 sekunde.

setTimeout()Metoda poziva funkciju samo jednom nakon vremenskog intervala (ovdje 3 sekunde).

Međutim, u gornjem programu, budući da se funkcija sama poziva, program prikazuje vrijeme svake 3 sekunde.

Ovaj program radi neograničeno (sve dok se memorija ne potroši).

Napomena : Ako trebate izvršiti funkciju više puta, bolje je koristiti setInterval()metodu.

JavaScript clearTimeout ()

Kao što ste vidjeli u gornjem primjeru, program izvršava blok koda nakon navedenog vremenskog intervala. Ako želite zaustaviti ovaj poziv funkcije, možete koristiti clearTimeout()metodu.

Sintaksa clearTimeout()metode je:

 clearTimeout(intervalID);

Ovdje intervalIDje povratna vrijednost setTimeout()metode.

Primjer 3: Upotrijebite metodu 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.');

Izlaz

 setTimeout je zaustavljen.

U gore navedenom programu setTimeout()metoda se koristi za povećanje vrijednosti brojanja nakon 3 sekunde. Međutim, clearTimeout()metoda zaustavlja poziv funkcije setTimeout()metode. Stoga se vrijednost brojanja ne povećava.

Napomena : clearTimeout()Metodu obično upotrebljavate kada trebate otkazati setTimeout()poziv metode prije nego što se dogodi.

Metodi također možete proslijediti dodatne argumente setTimeout(). Sintaksa je:

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

Kada prođe dodatne parametre na setTimeout()način, ovi parametri ( parameter1, parameter2itd) će biti donesen na navedenu funkciju .

Na primjer,

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

Izlaz

 Pozdrav John Doe

U gore navedenom programu, dva parametra Johni Doeprenose se na setTimeout()metodu. Ova dva parametra su argumenti koji će se proslijediti funkciji (ovdje greet()funkcija) koja je definirana unutar setTimeout()metode.

Preporučeno čitanje: JavaScript async () i await ()

Zanimljivi članci...