2011-06-10 54 views
3

我有几个函数可能需要或可能不需要重复一定次数。次数由用户设置,并存储在变量:xTcount中。迭代脚本X次

if (xTcount > 0) { 
    for (i=0; xTcount <= i; i++) { 
     $(document).miscfunction(); 
    } 

} 

我没有真正测试过上面的脚本,因为我确定它不正确。什么使我想要的技巧变得棘手,就是我不想为每个可重复的函数编写一个“check xTcount”子句。如果可能的话,我想创建一些主检查器,只需重复下一次调用函数xTcount时间...

回答

14

重复一些事情xTcount次?也许我误解,但它看起来很简单:

for(var i = 0; i < xTcount; i++) { 
    doSomething(); 
    doSomethingElse(); 
} 

如果问题是你不喜欢for环的样子,或者你的脚本需要您构建同一个循环多次,你可以提取它,如果你reeeaaallllly想:

function repeat(fn, times) { 
    for(var i = 0; i < times; i++) fn(); 
} 

repeat(doSomething, xTcount); 
// ...later... 
repeat(doSomethingElse, xTcount); 
+0

我有我可以/要循环的各种功能。我不想进入每一个并创建循环条款。如果循环环绕下一个被调用的函数,它会更加灵活。 – 2011-06-10 18:02:20

+0

- 我重新阅读你的文章,你确实提供了一个主中继功能,谢谢,但我无法让它工作,有什么我应该知道使用它?它看起来挺直... – 2011-06-11 15:57:19

+0

@Jason:我在城外有限的互联网接入,所以不能帮助一吨。无论如何,我已经检查并且该功能正确运行。你是否收到错误信息或任何东西?记住,将函数作为一个对象传递,而不是调用它,例如,用函数lol(){alert(“lol”)}'run'repeat(lol,5)'而不是'repeat(lol(),5 )'。 – Matchu 2011-06-12 03:00:58