我是JS的新手。我正在研究以下代码,我想知道回调代表什么,它是什么?
function(fileID, callback) {
var request = $.ajax({
url: url + "wishlist/" + fileID,
type: "GET"
});
request.done(callback);
request.fail(function (jqXHR, textStatus) {
});
}
答案 0 :(得分:4)
回调是响应从服务器返回时调用的函数。
答案 1 :(得分:2)
它不代表任何东西,它不是缩写。
一般而言,回调是一段代码,传递给稍后要执行的函数。
在JavaScript中,“代码片段”几乎总是一个函数。
最简单的例子是setTimeout
,其中第一个参数是代码(应该是一个函数,但可能是要评估的字符串),第二个参数是从现在开始的毫秒数“以后的时间“发生在。
function aFunction () { alert("Ta da"); }
setTimeout( aFunction /* The callback function */,
500 /* 500ms from now */
);
在您提出问题的示例中,“稍后时间”是“当收到对HTTP请求的响应时”。另一个例子可能是“当用户点击链接时”:
document.querySelector('a').addEventListener('click', aFunction);