2015-09-21 33 views
-1

我试图循环这段代码。但它不起作用。有人可以说有我的错误吗?如何在Javascript中循环代码

for (var i = 0; i < 3; i++) 
"var interval =setInterval(function(){veikia " + i + "()}, 200); 
setTimeout(function(){ clearInterval(interval) }, 300); "; 
} 
+1

它看起来像你有你的循环内随机引号..试着把那些了吗?现在你正在循环一个字符串3次。 – Jesse

回答

0

引号?和存储函数的名称,使用一个变量,并调用它的范围(我假设窗口是范围为每缺少的代码。)

for (var i = 0; i < 3; i++) { 
    var func = "veikia" + i; 
    var interval = setInterval(function(){ window[func]() }, 200); 
    setTimeout(function(){ clearInterval(interval) }, 300);; 
} 

,你可能想使用IIFE作为i会永远是相同的参考,它会结束了最后一个号码:

for (var i = 0; i < 3; i++) { 
    (function(i) { 
     var func = "veikia" + i; 
     var interval = setInterval(function(){ window[func]() }, 200); 
     setTimeout(function(){ clearInterval(interval) }, 300); 
    })(i); 
} 
+0

只有一个“veikia”,但不是全部都是 –

+0

您是否尝试过我提供的第一或第二个代码片段? – taxicala

+0

对不起,这是我的错误。谢谢。 –