setTimeout setInterval
生活随笔
收集整理的這篇文章主要介紹了
setTimeout setInterval
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、setTimeout:在指定的毫秒數(shù)后,將定時(shí)任務(wù)處理的函數(shù)添加到執(zhí)行隊(duì)列的隊(duì)尾。 2、setInterval:按照指定的周期(以毫秒數(shù)計(jì)時(shí)),將定時(shí)任務(wù)處理函數(shù)添加到執(zhí)行隊(duì)列的隊(duì)尾。 setTimeout與setInterval且都是異步的, 調(diào)用setTimeout時(shí)候,會(huì)有一個(gè)延時(shí)事件排入隊(duì)列; Javascript最基礎(chǔ)的異步函數(shù)是setTimeout與setInterval,setTimeout會(huì)在一定的時(shí)間后執(zhí)行相應(yīng)的函數(shù),它接受一個(gè)回調(diào)函數(shù)和一個(gè)毫秒時(shí)間,如下:
console.log( "a" );
setTimeout(function() {
console.log( "c" )
}, 500 );
setTimeout(function() {
console.log( "d" )
}, 500 );
setTimeout(function() {
console.log( "e" )
}, 500 );
console.log( "b" ); 控制臺(tái)先輸出“a”、“b”,大約500毫秒后,再看到“c”、“d”、“e”。你可能 聽(tīng)過(guò)事件循環(huán)這個(gè)詞,它是用于描述隊(duì)列的工作方式的。當(dāng)異步函數(shù)執(zhí)行時(shí),回調(diào)函數(shù)就會(huì)被壓入這個(gè)隊(duì)列里面,javascript引擎直到異步函數(shù)執(zhí)行完, 才會(huì)開(kāi)始出來(lái)這個(gè)事件循環(huán),這意味著javascript也并不是多線程的,事件循環(huán)是一個(gè)先進(jìn)先出的(FIFO)隊(duì)列,這說(shuō)明回調(diào)是按照他們被加入隊(duì)列 的順序執(zhí)行的(在相同的情況下。),但是如果延遲時(shí)間不一樣的話,那么就不會(huì)了,就像上面的列子把定時(shí)毫秒數(shù)改大點(diǎn)輸出來(lái)的就不一樣了。轉(zhuǎn)載于:https://www.cnblogs.com/sheting/p/5601305.html
總結(jié)
以上是生活随笔為你收集整理的setTimeout setInterval的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 各种弹窗
- 下一篇: 【分享】WeX5的正确打开方式(1)