如何创建一个for循环来遍历不同的函数而不重复执行同一个函数
How to make a for loop that will go through functions without going through the same one twice
我有一些函数,如:
function functionOne() {
/*
code
*/
}
function functionTwo() {
/*
code
*/
}
function functionThree() {
/*
code
*/
}
我怎么能写代码调用每个函数,一次(即没有重复),在一个随机的顺序?
把你的函数放在一个数组中,随机化数组,然后遍历它:
var functions = [
function () { alert("function 0"); },
function () { alert("function 1"); },
function () { alert("function 2"); },
function () { alert("function 3"); },
function () { alert("function 4"); }
];
functions.sort(function() { return 0.5 - Math.random() });
for (var i=0;i<5;i++) {
console.log(i);
functions[i]();
}
Here's fiddle
这个函数应该可以工作:
function randCall(){
var array = [1,2,3];
while(array.length > 0){
var rand = (Math.random*array.length)|0; //converts to an Integer value
switch(array[rand]){
case 1:
functionOne();
break;
case 2:
functionTwo();
break;
case 3:
functionThree();
break;
}
array.splice(rand, 1);
}
}
相关文章:
- 在同一个javascript事件处理程序中调用不同的函数
- 当多个 JS 事件调用同一个函数时,如何处理它们
- 如何用两种不同的方式调用同一个函数
- JS:我如何访问一个函数内的变量值,而另一个函数内部的变量值,并且两个函数属于同一个对象
- JavaScript 如何将函数结果与数组中的值一起传递到同一个函数中
- 从同一个变量中调用函数
- 有更好的方法吗?在多个函数中重用同一个循环
- 将同一个jquery文件中的几个js函数以我选择的不同间隔加载到几个html页面中
- 从同一个文件和不同的文件调用nodejs函数
- 在同一个按钮上调用多个函数对我来说不起作用(ajax)
- 错误:在同一个angular Js函数中使用两个Http请求调用时,$digest已经在进行中
- 你能从同一个UserControls Javascript调用一个UserControl服务器函数吗
- 我可以在change()函数中为同一个$('element.class')运行嵌套的$('!ele
- 如何使变量在同一个重复函数中交替取值
- 使用ajax从同一个javascript函数多次调用,对象在函数体和ajax成功回调之间的参数不相同
- 如何在同一个脚本中从一个函数到另一个函数进行javascript调用
- 在新窗口中打开同一个AngularJS应用程序,在父窗口中调用函数
- 同一个函数参数能接受不同的数据类型吗?
- 我的一个变量是在initMap中设置的,但是当我在脚本中调用另一个函数时,同一个变量突然没有定义
- 如何在同一个函数中动画最近创建的DOM元素?