亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

函數節流

系統 2438 0

參考《JavaScript高級程序設計》第三版 第22章 高級技巧

瀏覽器中某些計算和處理比其他的昂貴的多。 例如, DOM操作比起非DOM交互需要更多的內存和CPU時間。 連續嘗試進行過多的DOM相關操作可能會導致瀏覽器掛起, 有時候甚至崩潰。 尤其IE中使用onresize事件處理程序的時候容易發生, 當調整瀏覽器大小的時候, 該事件會連續觸發。 為了繞開這個問題, 可以使用定時器對該函數進行節流。

函數節流背后的基本思想是指, 某些代碼不可以在沒有間斷的情況連續重復執行。 第一次調用函數,創建一個定時器, 在指定的時間間隔之后運行代碼。 當第二次調用該函數時, 會清除前一次的定時器并設置另一個。 目的是只有在執行函數的請求停止了一段時間后才執行。

    
      function throttle(method, context) {
	clearTimeout(method.tId);
	method.tId = setTimeout(function() {
		method.call(context);
	}, method.interval || 200);
}
    
  

throttle函數接受兩個參數, 要執行的函數及作用域, 如果沒有第二個參數, 將會在全局作用域執行。

onresize舉例:

    
      function handleResize() { 
	// do someting
}
window.onresize = function() {
    handleResize.interval = 100;
	throttle(handleResize);
}
    
  

使用了throttle()函數后, 大大減少了handleResize()的執行次數。

函數節流


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产一级一片免费播放 | 亚洲精品久久午夜香蕉 | 欧美毛片在线 | 亚洲国产成人久久笫一页 | 激情四播| 视频一区中文字幕 | 欧美成人剧情中文字幕 | 奇米免费视频 | 凹凸精品视频分类国产品免费 | 9999在线视频 | 久久在线 | 毛片免费高清免费 | h在线免费视频 | 狠狠色综合久久丁香婷婷 | 今天的恋爱未删减在线观看 | 热热99 | 久久九九精品一区二区 | 婷婷激情在线视频 | 久久久99精品 | 国产三级做爰高清视频a | 男人的天堂免费视频 | 亚洲精品中文字幕在线 | 美女伊人 | 成人国产在线视频 | 国产在线观看一区二区三区四区 | 99久久精品6在线播放 | 久久成人免费视频 | 婷婷五月色综合香五月 | 最新黄色免费网站 | 久久美利坚 | 亚洲国产经典 | 天天干天天插天天 | 久久综合国产 | 一级aaa级毛片午夜在线播放 | 69国产成人综合久久精品91 | ww亚洲ww亚在线观看 | 奇米影视资源 | 久久99热这里只有精品7 | 久久女| 午夜激情网站 | 欧美国产成人精品一区二区三区 |