javascript/jquery设置定时器并且在闭包中停止 要怎么弄?
比如下面varb=0;functiona(p){b++;console.log(b);if(b>5){//这里要如何写才能让他所在的定时器直接停止可以少设置一个变量}}v...
比如下面
var b=0;
function a(p){
b++;
console.log(b);
if(b>5){
//这里要如何写才能让他所在的定时器直接停止可以少设置一个变量
}
}
var p=setInterval(function(){
a(p)
},300);
我必须设置一个变量p来获取setInterval才能停止 有没有办法只要满足b>5 在闭包中设置停止 减少设置一个变量?
就是b>5那里 我要怎么写才能减少设置一个变量p直接可以停止掉 展开
var b=0;
function a(p){
b++;
console.log(b);
if(b>5){
//这里要如何写才能让他所在的定时器直接停止可以少设置一个变量
}
}
var p=setInterval(function(){
a(p)
},300);
我必须设置一个变量p来获取setInterval才能停止 有没有办法只要满足b>5 在闭包中设置停止 减少设置一个变量?
就是b>5那里 我要怎么写才能减少设置一个变量p直接可以停止掉 展开
展开全部
我理解你是想做多个定时器且要规定执行次数,那你完全可以把定时器和方法写在一起,把要执行的的代码作为参数放进去,例如这样:
var a = 0, b = 5;
var timer = function(code,speed,count){
var num = 0;
var myTimer = setInterval(function(){
code();
num++;
if(count&&num>=count)
clearInterval(myTimer);
},speed);
};
timer(function(){console.log(a+b)},300,5);
如果你不需要限制次数,最后一个参数留空就行了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询