回调函数定义:
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
我的理解:
其实就是一个函数作为另一个函数的参数,然后主函数运行到使用那个函数参数的时候,就会去执行这个函数,完事了以后继续执行主函数,就这么简单。
举例:
//不带参数的case
function getTotal(b, c) {
return b() + c();
}
function A() {
return 10;
}
function B() {
return 7;
}
var temp = getTotal(A, B);
alert(temp);
//带参数的case
function getSuperTotal(m, n, getDouble) {
var t= m+n;
return getDouble(t);
}
function getDouble(c) {
return c * 2;
}
var temp2 = getSuperTotal(3,5,getDouble);
alert(temp2);
结果:第一个是17,第二个是16.
应该很好理解了吧,所谓的回调函数就这么简单。
回调函数和AJAX异步经常会弄混,下一章我具体来讲讲。