在Javascript中如何在继续使用另一个函数之前等待具有ajax调用的函数

时间:2015-09-16 16:59:16

标签: javascript ajax

这是我的js文件的过度视图,我在其中调用2函数foo1和foo2。

function foo1(){
 // do some ajax call which takes random amount of time
}

function foo2(){
 // do something which needs foo1() being already  done
}

foo1();
// reach here only if foo1 is complete
foo2();

PS。我不想使用jQuery或淘汰赛。 也已经研究过How to wait for a func...

1 个答案:

答案 0 :(得分:0)

鉴于你说foo1()正在做ajax,你需要这样的东西:

function foo1() { 
   $.ajax( ....
       success: function() { foo2(); }
   );
}
function foo2() {
    console.log("foo1() finished");
}

foo1();

所以当ajax调用返回(成功)时,它会自动调用foo2(),你唯一需要做的就是调用foo1()。