Window setTimeout() -menetelmä

Määrittely ja käyttö

setTimeout() Metodi kutsuu funktiota tietyn ajan kuluttua.

Huomautus:1 sekunti = 1000 millisekuntia.

Vinkki

setTimeout() Suoritetaan vain kerran.

Jos tarvitset toistoa, käytä sen sijaan setInterval().

Ole hyvä ja käytä clearTimeout() -menetelmä Estääksesi funktion käynnistämisen:

Jos haluat poistaa aikataulutetun toiminnon, käytä setTimeout() Palautettu id:

myTimeout = setTimeout(function, milliseconds);

Sitten voit kutsua clearTimeout() -menetelmä Lopettaaksesi suorituksen:

clearTimeout(myTimeout);

Katso myös:

clearTimeout() -menetelmä

setInterval() -menetelmä

clearInterval() -menetelmä

Esimerkki

Esimerkki 1

Vain 5 sekunnin kestävä tervehdys:

const myTimeout = setTimeout(myGreeting, 5000);

Kokeile itse

Esimerkki 2

Estä myGreeting:n suoritus käyttämällä clearTimeout(myTimeout):

const myTimeout = setTimeout(myGreeting, 5000);
function myStopFunction() {
  clearTimeout(myTimeout);
}

Kokeile itse

Lisää esimerkkejä sivun alalta.

Syntaksi

setTimeout(function, milliseconds, param1, param2, ...)

Parametrit

Parametrit Kuvaus
function Välttämätön. Suoritettava funktio.
milliseconds

Valinnainen. Odotusaika ennen suoritusta millisekunteina.

Oletusarvo on 0.

param1, param2,...

Valinnainen. Funktiolle annetut parametrit.

IE9 ja aikaisemmat versiot eivät tue.

Palautusarvo

Tyyppi Kuvaus
Numerot.

ajastimen ID.

Ole hyvä ja yhdistä tämä id clearTimeout(idmenetelmä käytä yhdessä aikatauluttimen peruuttamiseen.

Selaimet tukeminen

Kaikki selaimet tukevat setTimeout():

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Tuki Tuki Tuki Tuki Tuki Tuki

Lisää esimerkkejä

Esimerkki 3

Näytä varoitusikkuna 3 sekunnin (3000 millisekunnin) kuluttua:

let timeout;
function myFunction() {
  timeout = setTimeout(alertFunc, 3000);
}
function alertFunc() {
  alert("Hello!");
}

Kokeile itse

Esimerkki 4

Näytä ajastusteksti:

let x = document.getElementById("txt");
setTimeout(function(){ x.value = "2 seconds" }, 2000);
setTimeout(function(){ x.value = "4 seconds" }, 4000);
setTimeout(function(){ x.value = "6 seconds" }, 6000);

Kokeile itse

Esimerkki 5

Avaa uusi ikkuna ja sulje se kolmen sekunnin (3000 millisekunnin) kuluttua:

const myWindow = window.open("", "", "width=200, height=100");
setTimeout(function() {myWindow.close()}, 3000);

Kokeile itse

Esimerkki 6

Jatkuva laskenta - mutta laskenta voidaan lopettaa:

function startCount()
function stopCount()

Kokeile itse

Esimerkki 7

Kellot, jotka luodaan ajastustapahtumien avulla:

function startTime() {
  const date = new Date();
  document.getElementById("txt").innerHTML = date.toLocaleTimeString();
  setTimeout(function() {startTime()}, 1000);
}

Kokeile itse

Esimerkki 8

Siirrä parametrit funktiolle (ei toimi IE9 ja aikaisemmissa versioissa):

setTimeout(myFunc, 2000, "param1", "param2");

Kokeile itse

Esimerkki 9

Mutta jos käytät nimetöntä funktiota, se soveltuu kaikkiin selaimiin:

setTimeout(function() {myFunc("param1", "param2")}, 2000);

Kokeile itse