IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Matej
Člen
Avatar
Matej:21.4.2014 22:43

Zdravim , neviem ci som to zle pochopil ale preco v

var c = 0;
var t;
var timer_is_on = 0;

function timedCount()
{
document.getElementById("txt").value=c;
c = c+1;
t = setTimeout(function(){timedCount()},1000);
}

je "setTimeout()" namiesto "setInterval()"?
setTimeout by mal vykonat funkciu za tolko sekund aka je zadana hodnota(delay)
pricom
setInterval by mal vykonavat funckiu kazdych x sekund (podla toho aka je zadana hodnota)
ci?:D

 
Odpovědět
21.4.2014 22:43
Avatar
1Pupik1989
Člen
Avatar
1Pupik1989:22.4.2014 9:50

Výsledek by měl být stejný, ale nemusí. Při složitější funkci, která bude trvat déle jak sekundu, by při setIntervalu byla spuštěná 2x. Nebo třeba při neodpovídajícím prohlížeči by se po 5 vteřinách provedla 5x. Tím setTimeoutem jí volá rekurzivně, čili dokud se funkce uvnitř nedokončí, tak se znovu nezavolá.

Rozhodně bych nepřičítal do c 1, ale počítal rozdíl dvou časů. A ten element bych hodil do proměnné. Vybírat ho dokola nemá smysl.

Nicméně v tomto případě setInterval asi nemůže nic zkazit.

setTimeout s opětovném voláním funkce používám při měření fps ve hrách.

 
Nahoru Odpovědět
22.4.2014 9:50
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.