1. 程式人生 > >js中setTimeOut()和setInterval()的使用--程式執行時間控制

js中setTimeOut()和setInterval()的使用--程式執行時間控制

問題出現環境:

      Extjs中使用ajax請求時,並不阻止其後程式繼續執行,在業務流程中,我們需要在請求結束後執行操作,我們可以使用常規方法,將後續程式寫在回撥函式callback:或是success中,實現非同步控制,當我們的執行函式和ajax請求函式不在同一js中,接下來的處理,就用到了setTimeOut(),setTimeOut()使用過程中需要注意的是,第一個引數傳入的是方法,而第二個引數傳遞的是等待的時間毫秒數,

[javascript] view plain copy
  1. function sayHello(){  
  2. alert("Hello");  
  3. }  
  4. //通過方法名呼叫,新增雙引號。
  5. setTimeOut("sayHello()",1000);  
  6. setTimeOut(function(){sayHello()},1000);  

上述兩種呼叫方法效果是一樣的,至今不明白,為什麼不可以寫成setTimeOut(sayHello(),1000)

setTimeOut()設定該方法在1000ms後只執行一次,如果需要間隔指定時間重複執行方法時,那就要使用

setInterval()。最好定義變數,

var timeUpdate = setInterval("yourfunction()",yourtime);

停止該方法時呼叫clearInterval(timeUpdate)