JavaScript设计模式与开发实践:分时函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript设计模式与开发实践:分时函数相关的知识,希望对你有一定的参考价值。
web端在进行大量DOM数据插入的时候,如果一次性插入上千条数据,浏览器吃不消会出现卡顿假死的情况,代码如下:
var arr = []; for(var i = 0; i < 1000; i++){ arr.push(i); } var loadData = function(data){ for(var i = 0, l = data.length; i < l; i++){ var elem = document.createElement(‘div‘); div.innerhtml = i; document.body.appendChild(div); } }; loadData(arr); //创建timeChunk()函数分批插入DOM var timeChunk = function(data, fn, count, interval ){) //data数据 fn执行的逻辑函数 count一次插入的数量 interval分批执行的时间 var obj,t; var len = arr.length; var start = function(){ for(var i = 0; i < Math.min(count || 1, arr.length), i++){ var obj = arr.shift(); fn(obj); } }; return function(){ t = setInterval(function(){ if(arr.length === 0){ return clearInterval(t); } }, interval) } }
以上是关于JavaScript设计模式与开发实践:分时函数的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript设计模式与开发实践-读书笔记闭包和高阶函数
javascript设计模式与开发实践阅读笔记—— this,闭包与高阶函数