我正在阅读有关回调函数的内容(此处)(也是我参加的在线课程中的一部分),现在我卡住了。原因是我不能理解为什么需要使用回调函数,如果可以直接调用它们。以下是示例:
1 - 使用回调函数:
function showArticle(id, callbackSuccess, callbackError){
if (true){
callbackSuccess("This is a callback function", "It is very utilized.");
} else {
callbackError("Error on data recovery.");
}
}
var callbackSuccess = function(title, description){
document.write("<h1>" + title + "</h1>");
document.write("<hr>");
document.write("<p>" + description + "</p>");
}
var callbackError = function(error){
document.write("<p><b>Erro:</b>" + error + "</p>");
}
showArticle(1, callbackSuccess, callbackError);
2 - 这是我没有使用回调函数并且结果相同的代码:
function showArticle(id){
if (true){
callbackSuccess("This is a callback function", "It is very utilized.");
} else {
callbackError("Error on data recovery.");
}
}
var callbackSuccess = function(title, description){
document.write("<h1>" + title + "</h1>");
document.write("<hr>");
document.write("<p>" + description + "</p>");
}
var callbackError = function(error){
document.write("<p><b>Erro:</b>" + error + "</p>");
}
showArticle(1);
为什么我应该使用回调函数而不是在示例2中直接调用它们?