在Javascript中定时循环

alk*_*p79 0 javascript

我甚至不知道如何开始这个:我需要一个执行一个function(比较简单console.log())的for循环,每次执行之间都有一个定时延迟.我一直试图这样做setTimeout(),它永远不会奏效.如果我从setTimeout调用具有循环的函数,它将无法工作.理想情况下,我希望我的for循环可以打印x次,每次打印之间会延迟几秒钟.任何想法如何工作?我尝试过这样的事情:

function printStuff(){
for(var i=0;i<5;i++){
console.log(i);
}
};
setTimeout(printStuff(),1000);
Run Code Online (Sandbox Code Playgroud)

suv*_*roc 5

对我来说你应该执行setInterval并在其中你应该增加反击.当计数器达到极限时,您只需清除间隔.

var counter = 0;
var limit = 10;
var myVar = setInterval(function(){ 
    if (counter > limit)
    {
        clearInterval(myVar);
    }
    counter++;
    console.log("test"); 
}, 1000);
Run Code Online (Sandbox Code Playgroud)