setTimeout與setInterval的區別淺析

網頁製做動態效果時,必定會遇到某些需求,要求某段程序等待多時時間後再開始執行,就像在咱們的生活中同樣,待會兒再開始作一件事。在JavaScript中主要經過定時器實現此類需求,本文將對定時器作一個歸納,正對setTimeout()作一個詳細用法總結。函數

setTimeout()定義和用法spa

首先讓咱們看一看W3C上關於setTimeout方法的介紹code

定義
ip

setTimeout() 方法用於在指定的毫秒數後調用函數或計算表達式。ci

語法字符串

setTimeout(code,millisec)get

參數:
同步

code:必需。要調用的函數後要執行的 JavaScript代碼串。string

millisec:   必需。在執行代碼前需等待的毫秒數。io

提示

setTimeout() 只執行 code 一次。若是要屢次調用,請使用 setInterval() 或者讓 code 自身再次調用 setTimeout()。

代碼

?
1
2
3
4
5
6
7
function hello(){
alert( "hello" );
}
//使用方法名字執行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout( "hello()" ,3000); //使用字符串執行方法
window.clearTimeout(t1); //清除定時器

setInterval()定義和用法

代碼

?
1
2
3
4
5
6
//實時刷新時間單位爲毫秒
setInterval( 'refreshQuery()' ,8000);
/* 刷新查詢 */
function refreshQuery(){
  $( "#mainTable" ).datagrid( 'reload' , null );
}

業務場景

    • setTimeout用於延遲執行某方法或功能
    • setInterval則通常用於刷新表單,對於一些表單的假實時指定時間刷新同步
相關文章
相關標籤/搜索