javascript - 如何强制函数连续执行?

标签 javascript callback titanium appcelerator appcelerator-mobile

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

每个函数内部都是下载文件的 XHR 调用,如果我按如下方式调用函数

functionA();
functionB();

它们都会执行,但是 functionB 很多时候可以在 functionA 之前完成(由于使用 functionA 下载的文件很大)。但这会破坏我的应用程序的功能,我希望 functionB 仅在 functionA 之后触发已完全完成数据下载。

现在对我来说显而易见的答案是简单地将对 functionB 的调用放在 functionA 的 XHR 调用中,但由于我的代码设置方式(commonJS sutff ...),我不能这样做。 p>

有没有一种方法可以强制 functionA 自行完成并在 functionB 开始之前返回?

最佳答案

您可以使用回调,这是一个示例。它基本上将functionB传递给functionA,然后在functionA末尾调用functionB

var functionA = function(cb) {
    //do some stuff
    cb();
};
var functionB = function() {
    //do some stuff
};
functionA(functionB);

此外,如果您用 google 搜索 javascript 回调,您会发现许多有关它们的不同文章。足够让你忙读一段时间了。

关于javascript - 如何强制函数连续执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17159323/

相关文章:

javascript - Twitter 和 Facebook 分享网站分享按钮

javascript - 使用javascript更新图像src

javascript - 有没有办法在使用 AJAX 的父级之前在 div 中加载隐藏的 div?

javascript - 使用回调使两个函数依次运行

javascript - 回调不是一个函数吗?

android - 软键盘覆盖 EditText

javascript - TS转过来的JS代码中的 `Reflect.decorate`是什么?

node.js - Nodejs : merging functions using callbacks

android - Titanium for Android 中的轻量级窗口动画

ios - 防止在 Appcelerator 中触发 TabGroup 双击事件