for循环中做异步操作?
发布于 11 年前 作者 manbusky 5715 次浏览 最后一次编辑是 8 年前

我有一个数组,需要对这个数组数据进入数据库有效果性验证,然后插入到数据库中, 这得在循环中做呀,可是数据库操作是异步的,这怎么搞呢, 有经验的同志,说说呗?

外部做一个小的闭包实现,闭包加有一个计数变量?循环里执行一次就调用一次外部的闭包,将变量加1,等于数组长度就说明成功?

这样是否可行呢?怎么感觉这么别扭!!!

9 回复

windjs:

for(var i=0; i<10; i++) {
  $await(Wind.Async.sleep(100));
  console.log(i);
}

或者用递归来实现,其实也只能用递归实现

有一个async的module, 可以顺序的执行异步函数, 非常好用 async

好主意呢!

好东西呀,谢谢谢谢!

forEach 更for循环的效果不一样吗

@peiweippww 应该是同步操作吧

最简单就是加闭包哦

回到顶部