📅  最后修改于: 2023-12-03 14:42:33.939000             🧑  作者: Mango
在Javascript中,我们经常需要循环执行函数来处理一些复杂的逻辑。本文将介绍Javascript中循环执行函数的几种方法。
setInterval()
是Javascript中用于循环执行函数的函数之一。它会在指定的时间间隔内反复执行指定的代码。
setInterval(function(){
//要执行的代码
}, 时间间隔);
例如,下面的代码将每1000毫秒(即1秒)输出一次“Hello”:
setInterval(function(){
console.log("Hello");
}, 1000);
setTimeout()
也是用于循环执行函数的函数之一。不同的是,setTimeout()
会在指定的时间后执行函数。
setTimeout(function(){
//要执行的代码
setTimeout(arguments.callee, 时间间隔);
}, 时间间隔);
例如,下面的代码将在每1000毫秒(即1秒)后输出一次“Hello”:
setTimeout(function(){
console.log("Hello");
setTimeout(arguments.callee, 1000);
}, 1000);
for
循环也可以用于循环执行函数。下面的代码将输出数字1到5:
for(var i=1; i<=5; i++){
console.log(i);
}
我们可以将需要循环执行的函数放在for
循环中。例如,下面的代码将每1000毫秒(即1秒)输出一次数字1到5:
for(var i=1; i<=5; i++){
setTimeout(function(j){
console.log(j);
}, i*1000, i);
}
这里的setTimeout()
函数将每个循环迭代中的i
的值传递给了要执行的函数。这是因为setTimeout()
的第三个参数可以将参数传递给要执行的函数。
while
循环也可以用于循环执行函数。下面的代码将不停地输出数字1到5,因为while(true)
是一个无限循环。
var i=1;
while(true){
console.log(i);
i++;
if(i>5){
break;
}
}
我们也可以将需要循环执行的函数放在while
循环中。例如,下面的代码将每1000毫秒(即1秒)输出一次数字1到5:
var i=1;
while(true){
setTimeout(function(j){
console.log(j);
}, i*1000, i);
i++;
if(i>5){
break;
}
}
同样地,setTimeout()
函数将每个循环迭代中的i
的值传递给了要执行的函数。
总之,在Javascript中,我们有很多方法可以循环执行函数,包括setInterval()
、setTimeout()
、for
循环和while
循环。我们可以根据具体的需求来选择合适的方法。