国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

setTimeout和setInterval的區(qū)別

zhigoo / 1634人閱讀

摘要:和都返回定時器對象標(biāo)識符,用于和調(diào)用清除已設(shè)置的對象清除已設(shè)置的對象

雖然網(wǎng)上有很多兩者區(qū)別的文章,但是經(jīng)常搞混了,好記性不如爛筆頭,記錄一下。
語法:

setTimeout(code,millisec);
setInterval(code,millisec[,"lang"])

它們都有兩個參數(shù),一個是將要執(zhí)行的代碼字符串,還有一個是以毫秒為單位的時間間隔,當(dāng)過了那個時間段之后就將執(zhí)行那段代碼。
這兩個函數(shù)的區(qū)別就在于,setInterval在執(zhí)行完一次代碼之后,經(jīng)過了那個固定的時間間隔,它還會自動重復(fù)執(zhí)行代碼,而setTimeout只執(zhí)行一次那段代碼。
每5秒alert一次時間

var showTimes=setInterval("showTime()", 5000);
function showTime()
{
    var today = new Date();
    alert("The time is: " + today.toString());
}

setTimeout也可以實現(xiàn),代碼如下:

var showTimes=null;
showTime();
function showTime()
{
    var today = new Date();
    alert("The time is: " + today.toString());
    showTimes=setTimeout("showTime()", 5000);
}

這樣寫是不是看起來沒有什么區(qū)別,但是setTimeout方法不會每隔5秒鐘就執(zhí)行一次showTime函數(shù),它是在每次調(diào)用setTimeout后過5秒鐘再去執(zhí)行showTime函數(shù)。這意味著如果showTime函數(shù)的主體部分需要1秒鐘執(zhí)行完,那么整個函數(shù)則要每6秒鐘才執(zhí)行一次。而setInterval卻沒有被自己所調(diào)用的函數(shù)所束縛,它只是簡單地每隔一定時間就重復(fù)執(zhí)行一次那個函數(shù)。

所以這兩個函數(shù)需根據(jù)不同的情景去使用,如果需要在每隔一個固定的時間間隔后就精確地執(zhí)行某動作,那么最好使用setInterval,而如果不想由于連續(xù)調(diào)用產(chǎn)生互相干擾的問題,尤其是每次函數(shù)的調(diào)用需要繁重的計算以及很長的處理時間,那么最好使用setTimeout。

setInterval和setTimeout都返回定時器對象標(biāo)識符,用于clearInterval和clearTimeout調(diào)用
eg:

clearTimeout(showTimes) //清除已設(shè)置的setTimeout對象
clearInterval(showTimes) //清除已設(shè)置的setInterval對象

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/91220.html

相關(guān)文章

  • setTimeoutsetInterval區(qū)別nodejs中差異

    摘要:關(guān)于定時器的源碼在文件中,進入就關(guān)于定時器的一些設(shè)計解釋,因為是做服務(wù)端代碼,在內(nèi)部等大部分事件都會創(chuàng)建一個定時器,任何時間都可能存在大量的定時器任務(wù),所以設(shè)計一個高效的定時器是很有必要的。 博客文章地址 setTimeout與setInterval setTimeout 和 setInterval 是我們在 javaScript 中經(jīng)常用到的定時器,setTimeout 方法用于...

    meislzhua 評論0 收藏0
  • setTimeoutsetInterval區(qū)別

    摘要:和函數(shù)的同與異同都接受兩個參數(shù),一個是將要執(zhí)行的代碼塊,一個是以毫秒為單位的時間間隔,當(dāng)過了設(shè)定的時間間隔就執(zhí)行代碼塊部分。 setTimeout()和setInterval()函數(shù)的同與異:同:都接受兩個參數(shù),一個是將要執(zhí)行的代碼塊,一個是以毫秒為單位的時間間隔,當(dāng)過了設(shè)定的時間間隔就執(zhí)行代碼塊部分。異:setTimeout(codeblock, millisec)函數(shù)只執(zhí)行一次代碼...

    Scorpion 評論0 收藏0
  • setTimeoutsetInterval使用

    摘要:不過兩者各有各的應(yīng)用場景。方法實際上,和的語法相同。這意味著如果函數(shù)的主體部分需要秒鐘執(zhí)行完,那么整個函數(shù)則要每秒鐘才執(zhí)行一次。不過還是有辦法可以終止和函數(shù)的執(zhí)行。 var intervalProcess = setInterval(alert(GOAL!), 3000); 這個變量命名可以在實際代碼中采用 這兩個方法都可以用來實現(xiàn)在一個固定時間段之后去執(zhí)行JavaScript。不過...

    noONE 評論0 收藏0
  • javascript 定時器工作原理

    摘要:說到中的定時器,我們肯定會想到和這兩個函數(shù)。第一個回調(diào)一執(zhí)行,又開啟了第二個,這個定時器也是期望延時之后能夠執(zhí)行它的回調(diào)函數(shù)。可以用下面的圖來概括總結(jié)上面對定時器執(zhí)行原理進行了簡要的分析,希望能夠幫助我們更深入的理解。 說到 javascript 中的定時器,我們肯定會想到 setTimeout() 和 setInterval() 這兩個函數(shù)。本文將從 事件循環(huán)(Event Loop)...

    godlong_X 評論0 收藏0
  • 關(guān)于 setTimeoutsetInterval,你需要知道一切

    摘要:這里是結(jié)論,將是更驚艷的那一個。瀏覽器隔一段時間像服務(wù)器發(fā)送一個請求,詢問這里有沒有需要更新的消息。在響應(yīng)回來時,才會繼續(xù)發(fā)出第二個請求。但是,顯然的,這對我們要做的事來說并不算是什么問題。 我們都知道的是setTimout是用來延遲一個簡單的動作的,然而,setInterval的目的是用來重復(fù)執(zhí)行某個動作的。 然后,以上只是一半的事實。因為如果一個函數(shù)需要在一個間隔時間內(nèi)重復(fù)的執(zhí)行,...

    rottengeek 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<