在setTimeout中停止函数

时间:2016-09-01 14:30:30

标签: javascript settimeout

var test = setTimeout(function () {
    while (true) {
        console.log('Test');
    }
}, 5);

clearTimeout(test);

我有这段代码代表我的问题,clearTimeout(test)会在循环时停止吗?

2 个答案:

答案 0 :(得分:2)

在超时结束或清除超时之前,该功能不会运行。

var t = setInterval(myFunction,5000)
 clearInterval(t)
 function myFunction() {
 //your content
} //The above function will not run.

答案 1 :(得分:1)

当你clear the timeout函数时,这将使你的函数在设置的时间后不被调用。

当您在setTimeout内循环时,此clearTimeout(variable)函数不会停止执行该方法。

你可以尝试做这样的事情:

var myVar = setInterval(function(){ myTimer() }, 1000);

function myTimer() {
    console.log('Test');
}

function myStopFunction() {
    clearInterval(myVar);
}