function process(){
window.location.reload(false);
}
function looping(){
setTimeout(process(), 10000);
}
var looper = setInterval(looping(), 10000);
我尝试每 10 秒重新加载一次页面,但上面的代码会过于频繁地重新加载页面。为什么?
最佳答案
function process(){
window.location.reload(false);
}
function looping(){
setTimeout(process, 10000);
}
var looper = setInterval(looping, 10000);
尝试上面的代码。
在您的示例中,您只是调用回调函数,而不是向 setTimeout 和 setInterval 提供回调函数。只需提供函数名称及其固定
更新:函数是 JS 中的第一类对象。你可以将它传递给一个函数,从另一个函数返回一个函数等等......所以这些事情只需使用函数名称就可以完成(只是函数名称,就像任何其他变量名称一样)。
调用函数是使用括号完成的,您错误地调用了该函数,而不是将函数传递给 setTimeout
你可以完全摆脱 setTimeout 并按如下所示操作
function process(){
window.location.reload(false);
}
var looper = setInterval(process, 10000);
关于javascript - 为什么setTimeout和setInterval运行得太快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34987427/