Javascript Java脚本:如何查找setInterval函数正在运行或timedout?

Javascript Java脚本:如何查找setInterval函数正在运行或timedout?,javascript,setinterval,Javascript,Setinterval,在我的项目中,我使用两个setInterval函数,一个函数一直在运行。第二个功能是根据键盘输入动态启动和停止。如何查找第二个setInterval函数的状态(运行或超时) setInterval(function() { if(//want to check state of seInterval Function fire) { //somecod

在我的项目中,我使用两个setInterval函数,一个函数一直在运行。第二个功能是根据键盘输入动态启动和停止。如何查找第二个setInterval函数的状态(运行或超时)

    setInterval(function()
            {
            if(//want to check state of seInterval Function fire)
                      {
                       //somecode
                      }
            },300);
  var fire=setInterval(function()
            {
                     // some code
            },300);

最好在setInterval中的方法中添加一个
变量
isRunning
。根据它切换值。使用该值可以跟踪状态

根据您发布的代码:

isFirstInstanceRunning =true;
isSecondInstanceRunning = false;
setInterval(function() {
    //want to check state of seInterval Function fire
    if(isFirstInstanceRunning){
        //somecode
    }
},300);

//--- Pass a boolean parameter as "true" onKeypress     
function startSecondInstance(toCheck) {     
    var fire=setInterval(function() {
        //want to check state of seInterval Function fire
        if(toCheck){
            //somecode
        }
    },300);
}

//---Similarly when you stop the second method
function stopSecondInstance() {
    clearInterval(fire);
    isSecondInstanceRunning = false;
}

最好在setInterval中的方法中添加一个
变量
isRunning
。根据它切换值。使用该值可以跟踪状态

根据您发布的代码:

isFirstInstanceRunning =true;
isSecondInstanceRunning = false;
setInterval(function() {
    //want to check state of seInterval Function fire
    if(isFirstInstanceRunning){
        //somecode
    }
},300);

//--- Pass a boolean parameter as "true" onKeypress     
function startSecondInstance(toCheck) {     
    var fire=setInterval(function() {
        //want to check state of seInterval Function fire
        if(toCheck){
            //somecode
        }
    },300);
}

//---Similarly when you stop the second method
function stopSecondInstance() {
    clearInterval(fire);
    isSecondInstanceRunning = false;
}

不,不是直接的,但是您可以设置一个变量来定期检查它是否正在运行:

var isRunning = false;

//Start it
var timer = setInterval(function() {
    //yada yada function stuff
    isRunning = true;
}, 3000);

//Check it
if (isRunning) console.log("Running!");

//Stop it
clearInterval(timer);
isRunning = false;

不,不是直接的,但是您可以设置一个变量来定期检查它是否正在运行:

var isRunning = false;

//Start it
var timer = setInterval(function() {
    //yada yada function stuff
    isRunning = true;
}, 3000);

//Check it
if (isRunning) console.log("Running!");

//Stop it
clearInterval(timer);
isRunning = false;

显然,我们在变量名上的想法是一样的:D+1@tymeJV这是我第一次来这里。即使变量名也是一样的(相同的收缩):)+1表示示例代码。是否有任何默认方法来执行此操作?例如,这里变量fire存储值,即setInterval函数运行的次数。谢谢:)。我认为没有默认的方法。如果您想找到计数(调用fire的次数),则需要在fire的
setInterval
中添加一个新变量,并将其优雅地递增。希望这是有意义的。显然我们对变量名的看法是一样的:D+1@tymeJV这是我第一次来这里。即使变量名也是一样的(相同的收缩):)+1表示示例代码。是否有任何默认方法来执行此操作?例如,这里变量fire存储值,即setInterval函数运行的次数。谢谢:)。我认为没有默认的方法。如果您想找到计数(调用fire的次数),则需要在fire的
setInterval
中添加一个新变量,并将其优雅地递增。希望这是有意义的。如果你发布一个代码,它会更好。。无论如何定义始终设置间隔和设置超时。。。var myTimer=setTimeout(func,500);clearTimeout(myTimer)根据键盘输入,我找不到第二个函数(即clearInterval)的停止位置。它开始和停止。(代码的其他部分)如果你发布代码,它会更好。。无论如何定义始终设置间隔和设置超时。。。var myTimer=setTimeout(func,500);clearTimeout(myTimer)根据键盘输入,我找不到第二个函数(即clearInterval)的停止位置,即开始和停止。(代码的其他部分)