javascript之分時函式
阿新 • • 發佈:2018-12-19
在一些開發場景中,我們可能會一次性向文件中注入上千個節點,在短時間內向瀏覽器中大量新增DOM節點可能會讓瀏覽器吃不消,結果往往會讓瀏覽器卡頓或吃不消,解決方案之一便是使用分時函式(timeChunk)。
timeChunk函式讓建立節點的工作分批進行,比如一秒鐘建立1000個節點,改為每個200ms建立10個節點。具體timeChunk函式封裝如下:
function timeChunk( arr, fn, count){//arr 陣列 fn操作函式 count每次運算元量 var obj, t; var start = function(){ var len = Math.min(count||1,arr.length); for(var i=0; i < len; i++){ obj = arr.shift(); fn(obj) } }; return function(interval){ t = setInterval(function(){ if(arr.length==0){ return clearInterval(t) }; start(); },interval||200) } } //歡迎加入全棧開發交流群一起學習交流:619586920
對web開發技術感興趣的同學,歡迎加入Q群:864305860,不管你是小白還是大牛我都歡迎,還有大牛整理的一套高效率學習路線和教程與您免費分享,同時每天更新視訊資料。 最後,祝大家早日學有所成,拿到滿意offer,快速升職加薪,走上人生巔峰。