使用多个回调按顺序调用函数

时间:2013-11-12 01:13:36

标签: jquery

好的,我要回到这里

我知道延迟是如何工作的

function strong() {
    var def = new $.Deferred();
    console.log("strong running");
    setTimeout(function() {
      def.resolve("strong");
    }, 2000);
    return def.promise();
}

function stronger(x) {
    var def = new $.Deferred();
    display("Stronger: '" + x + "'");
    setTimeout(function() {
      def.resolve("stronger");
    }, 2000);
    return def.promise();
}

strong().then(stronger);

http://jsfiddle.net/8njW4/

我的问题是在延迟介绍之前,如何使用回调来完成?

1 个答案:

答案 0 :(得分:0)

您可以将回调作为函数参数传递:

function strong(callback) {
    console.log("strong running");
    setTimeout(callback, 2000);
}

function stronger(x, callback) {
    console.log("Stronger: '" + x + "'");
    setTimeout(callback, 2000);
}

strong(function() {
    stronger(3, function() {});
});