整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          javascript定時器setInterval的基本用法

          家啊可能經常在各大網站上看到這樣一個功能就是跳動的時鐘,一秒一秒的不停

          的變化。今天這個小分享呢就給大家分享一下怎么用javascript來實現這種隨處

          可見的小功能

          年來,使用setInterval條件輪詢確實很有用。無論是在客戶端還是服務器端進行輪詢,對特定條件做出反應都有助于改善用戶體驗。我最近需要完成的一項任務要求我setInterval立即執行然后繼續執行。

          常規和最佳方法是在調用初始`setInterval之前,我們就執行一下自定義的函數

          myFunction();
          setInterval ( myFunction ,  1000 ) ;  

          如果你真的想隔離對 的函數調用setInterval,你可以使用這個返回自身的自執行函數的技巧:

          setInterval ( function  myFunction ( )  { 
            
            
          
            
            return myFunction ;
          
          
          } ( ) ,  3000 )

          這種模式的缺點是它會導致維護問題,下一個開發人員不了解發生了什么。

          維護是成為一名優秀工程師的重要組成部分,因此至少應該需要注釋或輔助函數形式的文檔。如果你真的想要一個自動執行的setInterval,你有它!

          etTimeout()和setInterval()

          JS有兩種定時器分別是setTimeout()和setInterval(),這兩個區別就是setTimeout()是一次性的定時器,而setInterval()是循環的定時器。

          定時器的精度

          js中的定時器精度并不準確,這是因為JS中的定時器僅僅是將執行的語句加入隊列,這樣在定時器之前的語句若是在循環或者有延遲的情況下,定時器也會相應的延后。

          對于性能的消耗

          上面提到了js中的定時器精度不準確的原因,同樣的這也會導致使用setTimeInterVal語句會卡頓,其不管語句是否執行完成,都會在時間點執行語句。

          實際上大多數的場景中,只是想要定時之后執行完語句再等待定時的觸發,完全可以使用setTimeOut搭配clearTimeout這樣在使用定時器之后進行消除再加一個循環,總和性能比單純的setTimeInterVal要好上不少。

          可執行字符串形式語句

          由于歷史原因,兩種定時器都支持eval的效果,可以執行字符串形式的語句。

          若定時時間為0則放在隊列最后執行

          如果將定時為0秒后執行,語句并不會立刻執行,而是將其放在隊列最后,等待所有語句執行完成之后,再立刻執行。


          主站蜘蛛池模板: 手机看片福利一区二区三区| 午夜视频久久久久一区 | 国产一国产一区秋霞在线观看| 一区 二区 三区 中文字幕 | 三上悠亚亚洲一区高清| 综合无码一区二区三区四区五区 | 国产精品成人一区无码| 日本精品无码一区二区三区久久久| 夜夜添无码一区二区三区| 福利片福利一区二区三区| 无码国产精品久久一区免费 | 精品福利一区二区三区精品国产第一国产综合精品 | 成人国内精品久久久久一区 | 日韩AV无码久久一区二区| 亚洲中文字幕无码一区二区三区| 日韩AV在线不卡一区二区三区| 91精品一区二区综合在线| 亚洲av福利无码无一区二区| 国产主播一区二区| 久久久精品一区二区三区| 中文字幕人妻无码一区二区三区| 亚洲免费一区二区| 久久影院亚洲一区| 一本大道东京热无码一区| 亚洲午夜日韩高清一区| 黑人一区二区三区中文字幕| 精品一区二区三区无码视频| 婷婷亚洲综合一区二区| 波多野结衣精品一区二区三区| 国产一区二区三区在线电影 | 欧美一区内射最近更新| 精品人妻无码一区二区色欲产成人| 亚洲国产一区二区a毛片| 亚洲色偷偷偷网站色偷一区| 国产福利一区二区三区视频在线| 中文字幕视频一区| 精品国产日韩亚洲一区在线| 动漫精品一区二区三区3d| 中文字幕一区二区三区日韩精品| 中文字幕日本一区| 99久久国产精品免费一区二区|