您的位置:首页 > 其它

回调函数

2018-03-19 20:56 225 查看
回调函数,就是把一个函数作为参数传给另一个函数,在主函数执行完毕后,再去执行这一个函数。
在mdn的解释:A callback function is a function passed into another function as an argument, which is then invoked inside the outer function to complete some kind of routine or action.
作为回调函数,一般都是比较耗时的,常见的ajax请求就是其一。
这里引用下“我的老婆是校花”的例子: //定义主函数,回调函数作为参数
function A(callback) {
callback();
console.log('我是主函数');
}

//定义回调函数
function B(){
setTimeout("console.log('我是回调函数')", 3000);//模仿耗时操作
}

//调用主函数,将函数B传进去
A(B);

//输出结果
我是主函数
我是回调函数 此外我发现,在廖雪峰老师的ajax教程中,request.onreadystatechange = function () { // 状态发生变化时,函数被回调
if (request.readyState === 4) { // 成功完成
// 判断响应结果:
if (request.status === 200) {
// 成功,通过responseText拿到响应的文本:
return success(request.responseText);
} else {
// 失败,根据响应码判断失败原因:
return fail(request.status);
}
} else {
// HTTP请求还在继续...
}
} 这样也属于函数的回调。这里的function应该是被当作是参数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  回调函数