简单async数据分批处理

var data = (function(){
  var arr=[];
  var i = 0;
  while(i<100){
    arr[i]=function(){
    return i}(i);
i++;}
  return arr;

})();//创建一个有100个数的Array
var res=[];
function calc(data){

  newData = data.splice(0,10);//切10个下来
   res = res.concat(newData.map(function(val){return val}));//黏到res上

if(data.length >0){//如果还有,就再切
  setTimeout(function(){calc(data)},0);//hack

};

/* or 

while (data.length >0){

return calc(data);~~~*/

};

calc(data);

posted @ 2018-05-10 12:01  Esther_Cheung  阅读(262)  评论(0编辑  收藏  举报