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 intervalID
je 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
, parameter2
itd) ć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 John
i Doe
prenose 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 ()