首页新闻找找看学习计划

页面上很多异步如何知道是否执行结束

0
悬赏园豆:10 [已关闭问题] 关闭于 2015-10-26 17:45

function (){

异步1

异步2

异步3

异步n

}

有什么好方法知道这n个异步都执行完成。然后我执行别的方法

问题补充:

顺便 1,2,3,n异步的是否是从上往下执行的?

Cyclone77的主页 Cyclone77 | 初学一级 | 园豆:36
提问于:2015-10-26 17:36
< >
分享
所有回答(2)
0

因为是异步,没有顺序的,异步1没执行完,异步2就开始了,你想从上往下执行可以写到回调函数里面,也可以参照 silverlight的异步写法

稳稳的河 | 园豆:4183 (老鸟四级) | 2015-10-26 17:47
1

这个问题,我也遇到过。我的解决方案是这样的:

var flag = 0;  

function isComplete(){
  flag++;

      if(flag === 6){ // 6 表示你的n
         // 表示 n个异步都执行完毕了。执行你的方法
  }
}

调用方法如下:

function (){

异步1{isComplete()} // {isComplete()} 表示 success:function(){isComplete();}

异步2{isComplete()}

异步3{isComplete()}

异步n{isComplete()}

}

 

不会出现 类似多线程同步问题。因为js是单线程的。

NewBigGod | 园豆:182 (初学一级) | 2015-10-26 17:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册