整合營銷服務商

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

          免費咨詢熱線:

          javascript定時器setInterval的基

          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秒后執行,語句并不會立刻執行,而是將其放在隊列最后,等待所有語句執行完成之后,再立刻執行。


          主站蜘蛛池模板: 男人免费视频一区二区在线观看| 全国精品一区二区在线观看| 久久久久国产一区二区| 国产精品亚洲一区二区无码| 国产色精品vr一区区三区| 久久一区二区三区免费| 日本一区二区三区精品视频| 国产成人精品无码一区二区三区| 无码av人妻一区二区三区四区| 久久国产精品免费一区| 精品无码一区二区三区电影| 国产在线精品一区二区中文| 中文字幕一区视频一线| 在线视频一区二区三区| 亚洲狠狠狠一区二区三区| 日本中文字幕在线视频一区| 无码人妻精品一区二区| 国产自产在线视频一区| 无码少妇一区二区性色AV| 一区二区三区免费视频观看| 亚洲日韩中文字幕一区| 无码一区二区三区爆白浆| 国产欧美色一区二区三区| 亚洲欧美国产国产一区二区三区| 国产日韩高清一区二区三区 | 夜精品a一区二区三区| 在线精品国产一区二区| 亚洲av无码一区二区乱子伦as | 日本一区二区三区免费高清| 日韩精品人妻一区二区中文八零 | 日韩一区二区久久久久久| 色一情一乱一伦一区二区三区| 精品福利视频一区二区三区| 无码少妇一区二区三区| 国产精品一区在线播放| 国产主播福利一区二区| 激情内射亚洲一区二区三区爱妻| 亚洲无删减国产精品一区| 亚洲视频一区二区在线观看| 亚洲国产精品无码第一区二区三区 | 欧洲精品码一区二区三区|