2014-12-18 174 views
1

我有一个循环,像这样:的Javascript运行for循环每x秒

for(int i=0; i < 10; i++) { 
    MyFunc(i); 
} 

我将如何让程序运行,每3秒左右(0)..wait 3秒的程序将运行MYFUNC。 。MyFunc(1)..等待3秒..等等?

回答

0

你需要为每个迭代不同的延迟:

for(var i=0; i < 10; i++) { 
    runIt(i); 
} 

function runIt(i) { 
    setTimeout(function(){ 
     MyFunc(i); 
    }, i * 3000); 
} 

看到它在这里的行动:

for(var i=0; i < 10; i++) { 
 
    runIt(i); 
 
} 
 

 
function runIt(i) { 
 
    setTimeout(function(){ 
 
     //MyFunc(i); 
 
     document.body.innerHTML = i; 
 
    }, i * 3000); 
 
}

+1

虽然这个工程,这是值得指出的是,这可能不是可扩展的。只有这么多超时你应该有... – 2014-12-18 23:30:45