如何强制函数连续执行?

Mar*_*ark 2 javascript callback titanium appcelerator appcelerator-mobile

我有两个函数,让我们称它们为functionA和functionB

如果我按如下方式调用函数,则在每个函数内部都有XHR调用来下载文件

functionA();
functionB();
Run Code Online (Sandbox Code Playgroud)

它们都会执行,但是functionB可以在functionA之前多次完成(由于使用functionA下载文件的大小.但是这会破坏我的应用程序的功能,并且我希望在functionA完成后完成后才会触发functionB下载其数据.

现在我明显的答案是简单地将函数B的调用放在functionA的XHR调用中,但由于我的代码设置方式,我不能这样做(commonJS sutff ...)

有没有办法基本上强制functionA完成自己并在functionB启动之前返回?

Dal*_*las 5

你可以使用回调,这是一个例子.它基本上传递functionBfunctionA然后调用functionB结束functionA

var functionA = function(cb) {
    //do some stuff
    cb();
};
var functionB = function() {
    //do some stuff
};
functionA(functionB);
Run Code Online (Sandbox Code Playgroud)

此外,如果你谷歌javascript回调,你会发现很多不同的文章.足够让你忙着阅读很长一段时间.