国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

定時(shí)器的設(shè)置和清除setTimeout、setInterval、setImmediate-NodeJs

這篇具有很好參考價(jià)值的文章主要介紹了定時(shí)器的設(shè)置和清除setTimeout、setInterval、setImmediate-NodeJs。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

JS是單線程運(yùn)行邏輯,所有的程序默認(rèn)在一個(gè)線程執(zhí)行,出現(xiàn)排隊(duì)執(zhí)行。所有的定時(shí)器中,回調(diào)函數(shù)會(huì)在主線程后事件隊(duì)列中執(zhí)行。

1、一次性定時(shí)器set/clearTimeout()

? ? ? ? ? ? ?一次性定時(shí)器的開(kāi)啟:當(dāng)間隔時(shí)間到了,會(huì)調(diào)用一次回調(diào)函數(shù),間隔時(shí)間的單位是毫秒。

? ? ? ? ? ? ? var timer=setTimeout(回調(diào)函數(shù),間隔時(shí)間)。

? ? ? ? ????????一次性定時(shí)器的清除 / 清除已經(jīng)開(kāi)啟的定時(shí)器:clearTimeout(timer)

? // 開(kāi)啟:3000毫秒以后,會(huì)調(diào)用函數(shù)
????????var timer = setTimeout(function(){
?????????? ?console.log('boom')
????????} ,3000)
????????console.log('結(jié)束')

??// 清除
????????clearTimeout(timer)

2、周期性定時(shí)器

?????????周期性定時(shí)器的開(kāi)啟:每隔一段時(shí)間,就會(huì)調(diào)用一次回調(diào)函數(shù),間隔時(shí)間的單位也是毫秒。(循環(huán))

????????var timer = setInterval(回調(diào)函數(shù), 間隔時(shí)間)

????????清除開(kāi)啟的周期性定時(shí)器:clearInterval(timer);

var timer = setInterval(() => {
?? ?console.log('滴滴滴')
}, 3000)
console.log('結(jié)束')

// 清除
clearInterval(timer)

3、立即執(zhí)行定時(shí)器

????????立即執(zhí)行定時(shí)器的開(kāi)啟:

????????var timer = setImmediate(回調(diào)函數(shù))

????????清除開(kāi)啟的立即執(zhí)行定時(shí)器:clearImmediate(timer)

? ? ? ?process.nextTick(回調(diào)函數(shù)): 開(kāi)啟后,沒(méi)有清除的方法。

console.log(2)
setImmediate(() => {
?? ?console.log(1)
})
process.nextTick(() => {
?? ?console.log(4)
})

console.log(3)

//最后的結(jié)果是2 3? 4 1;

//因?yàn)樗械亩〞r(shí)器中,回調(diào)函數(shù)會(huì)在主線程后事件隊(duì)列中執(zhí)行。而這兒打印2和3是主線程,就先打印2和3,文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-762487.html

到了這里,關(guān)于定時(shí)器的設(shè)置和清除setTimeout、setInterval、setImmediate-NodeJs的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • JavaScript【瀏覽器環(huán)境概述(BOM)、回流和重繪 、定時(shí)器之 setTimeout()、定時(shí)器之 setInterval()、定時(shí)器實(shí)操、防抖(debounce)】(十六)
  • Vue3 setup語(yǔ)法糖銷毀一個(gè)或多個(gè)定時(shí)器(setTimeout或setInterval)

    如果在頁(yè)面/組件增加了定時(shí)器,就算跳轉(zhuǎn)到其他頁(yè)面,定時(shí)器也不會(huì)被清理,這時(shí)候就需要手動(dòng)清理,不然會(huì)有意想不到的bug,也會(huì)影響性能。 setTimeout是只執(zhí)行一次,setInterval是循環(huán)執(zhí)行,以下是用setTimeout舉例子,如果想要用setInterval,替換一次方法就行。 setTimeout替換成

    2024年02月13日
    瀏覽(47)
  • VUE設(shè)置和清除定時(shí)器

    方法一、在生命周期函數(shù)beforeDestroy中清除? 方法二、使用hook:beforedestroy (推薦) 該方法與在生命周期鉤子beforeDestroy中清除定時(shí)器的操作原理一樣,但更有優(yōu)勢(shì) 1.無(wú)需在vue實(shí)例上定義定時(shí)器,減少不必要的內(nèi)存浪費(fèi) 2.設(shè)置和清除定時(shí)器的代碼放在一塊,可讀性維護(hù)性更好 三

    2023年04月09日
    瀏覽(17)
  • JS 定時(shí)器setInterval()

    過(guò)多的就不描述了,可以直接參考官方文檔: 官方文檔:https://developer.mozilla.org/en-US/docs/Web/API/setInterval 參考文檔:https://www.jianshu.com/p/55b4eb04b1d3 直接上干貨 setInterval(參數(shù)1,參數(shù)2) setInterval(方法名, 1000 * 60 * 1); 描述:定時(shí)執(zhí)行 間隔執(zhí)行 注意: 1.參數(shù)1可以是一個(gè)匿名函數(shù) 也可以是

    2024年02月13日
    瀏覽(28)
  • js:定時(shí)器setInterval、clearInterval的使用

    定時(shí)器:可以在固定時(shí)間間隔,重復(fù)調(diào)用一個(gè)函數(shù) 文檔 https://developer.mozilla.org/zh-CN/docs/Web/API/setInterval 常用的語(yǔ)法 為了避免this指向問(wèn)題,一般使用箭頭函數(shù) 輸出結(jié)果

    2024年02月04日
    瀏覽(15)
  • 記錄--你敢信?比 setTimeout 還快 80 倍的定時(shí)器

    記錄--你敢信?比 setTimeout 還快 80 倍的定時(shí)器

    很多人都知道, setTimeout 是有最小延遲時(shí)間的,根據(jù)MDN 文檔 setTimeout:實(shí)際延時(shí)比設(shè)定值更久的原因:最小延遲時(shí)間中所說(shuō): 在瀏覽器中, setTimeout() / setInterval() 的每調(diào)用一次定時(shí)器的最小間隔是 4ms,這通常是由于函數(shù)嵌套導(dǎo)致(嵌套層級(jí)達(dá)到一定深度)。 在HTML Standard規(guī)范

    2024年01月24日
    瀏覽(21)
  • JavaScript中兩種定時(shí)器和清除定時(shí)器的使用

    ? 定時(shí)器就是在一段特定的時(shí)間后執(zhí)行某段程序代碼。 以指定的時(shí)間間隔(時(shí)間單位為毫秒)調(diào)用一次函數(shù)的定時(shí)器。 輪循定時(shí)器是以指定的時(shí)間間隔(時(shí)間單位為毫秒)重復(fù)調(diào)用一個(gè)函數(shù)的定時(shí)器。 clearTimeout(timeoutID) :清除只執(zhí)行一次的定時(shí)器(setTimeout函數(shù))。 timeoutID 為

    2024年02月13日
    瀏覽(22)
  • ? vue清除定時(shí)器Bug

    頁(yè)面加載,清除定時(shí)器 clearTimeout(intm) 問(wèn)題 遇見(jiàn)的需求是:webapp 從A頁(yè)面進(jìn)入B頁(yè)面,B頁(yè)面點(diǎn)擊按鈕,加載完B頁(yè)面的加載效果進(jìn)入c,從C頁(yè)面返回A頁(yè)面,仍然顯示B頁(yè)面的加載效果 結(jié)果定時(shí)器一直無(wú)法清除在destory銷毀之中。后來(lái)反復(fù)查找修改無(wú)果。多次翻看以后,突然之間發(fā)現(xiàn)

    2024年02月11日
    瀏覽(19)
  • 關(guān)于vue中如何清除定時(shí)器的方法

    關(guān)于vue中如何清除定時(shí)器的方法

    一、問(wèn)題 1、在vue中使用setTimeout定時(shí)器的時(shí)候,可能會(huì)遇到關(guān)不掉的情況,會(huì)存在明明已經(jīng)在beforeDestroy和destroyed中設(shè)置了定時(shí)器清除了,但是有時(shí)候沒(méi)生效,定時(shí)器還會(huì)繼續(xù)執(zhí)行。 2、在這里需要說(shuō)一下setTimeout的使用場(chǎng)景: (1)需要執(zhí)行一次定時(shí)的時(shí)候用得到,比如需要在

    2023年04月09日
    瀏覽(22)
  • STM32 hal庫(kù)編程定時(shí)器清除中斷標(biāo)志位,開(kāi)啟定時(shí)器中斷會(huì)立即進(jìn)入中斷的問(wèn)題

    1、如果不清除中斷標(biāo)志位,開(kāi)啟定時(shí)器中斷的話,不能完成相應(yīng)的計(jì)時(shí),會(huì)立即進(jìn)入中斷。 2、如果在開(kāi)啟定時(shí)器中斷前清除了中斷標(biāo)志位,就會(huì)等待計(jì)時(shí)完成再出發(fā)中斷。 3、主要是針對(duì)單次計(jì)時(shí)使用,尤其是對(duì)第一次計(jì)時(shí)有要求的程序。

    2024年02月01日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包