因此,我需要让一个函数在执行之前等待一个时间间隔,但是,我需要在等待过程中执行其余代码。基本上,我想更改传递的时间函数中的变量,而不必等待所有代码等待执行。
我将举一个例子,以便您可以更好地理解我。
function example(){
sampleCode();
}
var x = 0;
if(x > 0){
console.log("enough time has passed")
}
example();
请记住,整个代码块每秒被重复多次,而不是一个执行程序。我需要使x大于0而不阻止执行“ example”,因此setInterval是一个nono(除非它具有我不知道的功能)。我怎样才能做到这一点? (忽略在此范围内定义x的事实,因此将x设置为0,并假设它是一个全局变量)。
编辑:建议我使用setTimeout并显示如何使用它,这是以下方法:
function handleMouseClick(evt){
[...]
setTimeout(test(), 3000);
}
function test(){
alert("Testing");
}
无论我在超时中投入多少时间,这都会立即显示警报。怎么了?
答案 0 :(得分:-1)
您遇到的问题是您没有正确使用setTimeout函数。您需要从通话中删除括号。
setTimeout(test, 3000);
下降投票者;今天晚些时候,当我在电脑旁时,我将为以后的读者提供更全面,详细的答案。我目前正在休息,没有电脑。您可以查看我的其他一些答案,以使您放心,我将再次充实更详细的答案。