function setNormal() {
console.log(1)
}
function setAlert() {
console.log(2)
}
function alertFunction() {
alertVar = setInterval(alertFunc, 600);
}
function alertFunc() {
setAlert()
setTimeout(setNormal, 300)
}
alertFunction()
});
如何使函数alertFunction()仅在(例如)var loop = 1时运行,然后在var loop = 0时停止运行?
(这是我对stackoverflow的第一篇文章,对不起,如果我做错了)
答案 0 :(得分:1)
将setTimeout与条件一起使用。
var x = 1;
setTimeout(function foo(){
// this is a named function expression, foo name only exists inside itself
if(x!==0){
// do some code
console.log("Hello");
setTimeout(foo,1000);
}
},1000);
setTimeout(function(){
// change x after 3 seconds
x = 0;
},3000);
您还可以使用清除间隔来执行相同的操作
var x = 1;
var interval = setInterval(function (){
if(x!==0){
// do some code
console.log("Hello");
}else{
clearInterval(interval)
}
},1000);
setTimeout(function(){
// change x after 3 seconds
x = 0;
},3000);
答案 1 :(得分:0)
像它一样使用:-
var alertVar;
function alertFunction() {
alertVar = setInterval(alertFunc, 600);
}
function myStopFunction() {
clearInterval(alertVar);
}
if(lool=1){
alertFunction();
}
if(lool=0){
myStopFunction();
}