`
xusulong
  • 浏览: 79991 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

javascript 循环,并行 串行 jquery 的each

    博客分类:
  • js
阅读更多

        由于我做的系统,有一个页面需要从后台返回很多数据,这样处理起来就会很耗时间,最后会导致浏览器死掉,或者跳出脚本忙,停止调试还是继续之类的字样。

后来到网上搜了下,解决办法大抵就是让自己的代码一次执行的时候执行一小块,不要执行的太多或者循环嵌套比较深,同时还可以借助于setTimeout来让代码间隔执行。

 

针对我的代码,开始在each里面,我设置了个setTimeout的函数,结果发现根本不起作用阿,各个each中的元素还是几乎同步进行。后来有个哥们提示我each是并行的 ,异步的,需要改成for,这种同步的才能真正实现效果,于是我用类似于以下的代码来实现了js分块调用后台数据

 

var size = getData.length;
var index = 0;
function temp()
{
    if(index = size) {
        return;
    }
    ...//操作
    index ++;
    setTimeout(temp, 100);
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics