1. 程式人生 > >JavaScript暫停函式(JS中SLEEP函式)

JavaScript暫停函式(JS中SLEEP函式)

在其他面嚮物件語言中,例如java和PHP,都有sleep函式(睡覺函式),功能就是暫停程式碼執行一段時間。

在JS中沒有直接封裝好的sleep函式。但是我們有時候在測試,或者在請求遠端資料過程中,需要讓程式碼中斷執行一段時間,就需要使用sleep方法(實際上也可以使用loading介面,這樣使用者體驗會更好)。

上程式碼:函式有兩個變數,第一個是目標物件,第二個是睡眠時間(毫秒)。在需要的地方引用即可。

//開始睡覺  
function sleep(obj, iMinSecond){   
   if (window.eventList==null){
        window.eventList=new Array(); 
    }
   var ind=-1;   
   for (var i=0;i<window.eventList.length;i++){   
       if (window.eventList[i]==null) {   
         window.eventList[i]=obj;   
         ind=i;   
         break;   
        }   
    }   
   if (ind==-1){   
   ind=window.eventList.length;   
   window.eventList[ind]=obj;   
   }   
  setTimeout("GoOn(" + ind + ")",iMinSecond);   
}   
  
//繼續執行  
function wake(ind){   
  var obj=window.eventList[ind];   
  window.eventList[ind]=null;   
  if (obj.NextStep){
    obj.NextStep(); 
  }
}

當然,在實際的請求-相應過程中,可以使用動畫loading介面等待效果,下次繼續分析。