Tak przedstawiony kod, chcąc aby wykonywał się krok po kroku co dany czas x razy wygląda tak:
function numberone()
{
//akcja niezależne od siebie
setTimeout(numbertwo,3000);
}
function numbertwo(
){
//akcja niezależne od siebie
setTimeout(numberthree,5000);
}
function numberthree()
{
//akcja niezależne od siebie
setTimeout(numberfour,1000);
}
function numberfour()
{
//akcja niezależne od siebie
setTimeout(numberfive,7000);
}
....
"Zoptymalizowałem" do
dla parametru y wartość 1
function execute(y){
if( y==1){ //akcja niezalezna od siebie;}
if (y==2){ //akcja niezalezna od siebie;}
if (y==3){ //akcja niezalezna od siebie;}
if (y==4){ //akcja niezalezna od siebie;}
...
setTimeout(execute,3000,y+1)
}
Kod niby krótszy, ale powstaje problem ponieważ czas 3000ms jest pomiędzy każdym wykonaniem, a powinien być wskazany i się różnić.
Jak zrobić profesjonalnie aby dane akcje, wykonywały się co jakiś czas?