Javascript 设置一次触发多次的间隔

Javascript 设置一次触发多次的间隔,javascript,setinterval,Javascript,Setinterval,我有一个应用程序,我想每5秒钟检查一次URL,因此我使用以下代码: <script> function checknow() { $.get( "https://example.com", function(data) { console.log(data); }); } setInterval(function(){ console.log("time started..."); checkno

我有一个应用程序,我想每5秒钟检查一次URL,因此我使用以下代码:

<script>

function checknow()
{

  $.get( "https://example.com", function(data) {
  console.log(data);
  });


}

setInterval(function(){
    
    console.log("time started...");
    checknow();
    
    
}, 5000); 

</script>

函数checknow()
{
$.get(”https://example.com,函数(数据){
控制台日志(数据);
});
}
setInterval(函数(){
log(“开始的时间…”);
checknow();
}, 5000); 
在我的一台计算机上工作正常,但在另一台计算机上,它每5秒检查一次,但在1分钟后。。它在30秒内没有调用函数,并且突然一次调用该函数6次。因为它是随机发生的,所以我无法调试。我有50个客户,只有大约5个客户报告这个问题

setInterval
是否有问题,或者是否有其他选择


注意:当我检查此项时,网页处于前台并处于活动状态。

您可以使用
setTimeout
更好地控制请求之间的时间间隔

function checknow(){
  $.get("https://example.com", function(data) {
      console.log(data);
      setTimeout(checknow, 5000);
  });
}
checknow();

您可以使用
setTimeout
更好地控制请求之间的时间间隔

function checknow(){
  $.get("https://example.com", function(data) {
      console.log(data);
      setTimeout(checknow, 5000);
  });
}
checknow();

被动选项卡中的间隔已暂停,但未执行的调用正在累积,其行为与您描述的一样。@Teemu:那么我们如何解决此问题?看起来iota在其回答中引入了一个修复。被动选项卡中的间隔已暂停,但未执行的调用正在累积,行为就像你描述的那样。@Teemu:那么我们如何解决这个问题?看起来iota在他们的回答中引入了一个解决方案。对这个效果的解释是什么?
setTimeout()
如何解决这个问题?让我试试!对这种影响的解释是什么?
setTimeout()
如何解决这个问题?让我试试!