假设我有20行代码:
alert('x1');
alert('x2');
alert('x3');
.....
我如何一个接一个地执行这些行或者说一个接一个的间隙?
Normaly它看起来像这样,但对我来说这个解决方案太长了:
setTimeout(function(){
alert('x1');
},500);
setTimeout(function(){
alert('x2');
},1000);
setTimeout(function(){
alert('x3');
},500);
我想把我的所有函数放在一个数组中然后让它们以间隙执行!这个问题是我必须给我所有的函数名称,我试着避免这个!你会如何处理我的问题?
答案 0 :(得分:0)
var count = 0;
var t = function run(){
setTimeout(function(){
count++;
if(count == 1){
alert('x1');
}
//and so on
run();
},500);
}
clearTimeout(t);
答案 1 :(得分:0)
var funcs = [];
funcs.push(function (){alert("x1");});
funcs.push(function (){alert("x2");});
funcs.push(function (){alert("x3");});
funcs.push(function (){alert("x4");});
funcs.push(function (){alert("x5");});
funcs.push(function (){alert("x6");});
//...
var counter =0;
var timer = setInterval(function(){
funcs[counter]();
counter++
if (counter==funcs.length){
clearInterval(timer);
}
},500);