调用函数后的JavaScript回调

时间:2011-01-15 15:36:37

标签: javascript callback

好的,让我说我有这个功能:

function a(message) {
alert(message);
}

我希望在显示警报窗口后进行回调。像这样:

a("Hi.", function() {});

我不确定如何在我调用的函数内部进行回调。

(我只是以警报窗口为例)

谢谢!

3 个答案:

答案 0 :(得分:24)

回调没有特殊的语法,只需传递回调函数并在函数内调用它。

function a(message, cb) {
    console.log(message); // log to the console of recent Browsers
    cb();
}

a("Hi.", function() {
    console.log("After hi...");
});

输出:

Hi.
After hi...

答案 1 :(得分:5)

您可以添加if语句来检查是否添加了回调函数。因此,您也可以在没有回调的情况下使用该功能。

function a(message, cb) {
    alert(message);
    if (typeof cb === "function") {
        cb();
    }
}

答案 2 :(得分:1)

这是首先发出警报然后发出警报的代码。我希望这就是你的要求。

function  basic(callback) {
    alert("first...");
    var a = "second...";
    callback(a);
} 

basic(function (abc) {
   alert(abc);
});