Javascript 如何立即开始投票?

Javascript 如何立即开始投票?,javascript,polling,Javascript,Polling,我试图使用轮询进行一次小检查,每次间隔15秒 setInterval(function(){ $.ajax({ url: "aaa.com", success: function(data){ showUpdate(data); }, dataType: "text"}); }, 15000); 但这意味着在投票开始之前有15秒的初始延迟,这在我的情况下是

我试图使用轮询进行一次小检查,每次间隔15秒

setInterval(function(){
            $.ajax({ url: "aaa.com",
                success: function(data){
                showUpdate(data);
              }, dataType: "text"});
            }, 15000);
但这意味着在投票开始之前有15秒的初始延迟,这在我的情况下是不希望的。
如何强制立即开始轮询?

当简单的解决方案完成工作时,不要寻找智能解决方案:

function check() {
   $.ajax({ url: "aaa.com",
     success: function(data){
     showUpdate(data);
   }, dataType: "text"});
}
check();
setInterval(check, 15000);
或者,我通常更喜欢

function check() {
   $.ajax({ url: "aaa.com",
     success: function(data){
        showUpdate(data);
        setTimeout(check, 15000);
   }, dataType: "text"});  
}
check();

因为在响应延迟的情况下不会有一堆调用。

如果不考虑使用回调函数来处理调用之间的延迟,最简单的方法就是将该函数移出一个命名函数,并在第一次手动调用它

function doSomething() {

$.ajax({ url: "aaa.com",
                success: function(data){
                showUpdate(data);
              }, dataType: "text"});

}

doSomething();

setInterval(doSomething, 15000);
那就:

function immediatePoll(f, interval) {
    f();
    setInterval(f, interval);
}

immediatePoll(function(){
        $.ajax({ url: "aaa.com",
            success: function(data){
            showUpdate(data);
          }, dataType: "text"});
        }, 15000);