2011-01-15 9 views
6

Ok können so sagen, ich habe diese Funktion:JavaScript Rückruf nach Aufruf der Funktion

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

Und ich möchte einen Rückruf haben, nachdem das Alarmfenster angezeigt wird. Etwas wie dieses:

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

Ich bin nicht sicher, wie man einen Rückruf innerhalb der Funktion habe, die ich so nenne.

(Ich bin nur das Alarmfenster als Beispiel)

Dank!

Antwort

23

Es gibt keine spezielle Syntax für Callbacks, übergeben Sie einfach die Callback-Funktion und rufen Sie sie innerhalb Ihrer Funktion auf.

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

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

Ausgang:

Hi. 
After hi... 
5

Sie können eine hinzufügen, wenn Aussage zu überprüfen, ob Sie eine Rückruffunktion hinzufügen oder nicht. Sie können die Funktion also auch ohne Rückruf verwenden.

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

Hier ist der Code, der zuerst und dann zweite warnt. Ich hoffe, das hast du gefragt.

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

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