什么叫CallBack函数,怎么用回调函数?
JQuery众多常用方法中很经常会用到回调函数, 理解好js callback函数定义及用法,我们就可以利用callback函数帮我们做很多事情啦!
A callback is a function that is passed as an argument to another function and is executed after its parent function has completed.
这是js对callback函数的解析,意思是:callback函数是一个以参数形式传递给另一个函数的函数,并且该函数(指callback函数)必须等另一个函数执行完才会被调用!(当被调用时,另一个函数就是callback函数的父函数)。
理解起来可能有点绕,通俗点的例子:
函数a有一个参数,这个参数是个函数b,当函数a执行完以后执行函数b。那么这个过程就叫回调。
这里必须强调的一点:函数b是你以参数形式传给函数a的,那么函数b被调用时就叫回调函数。
疑问:
函数一定要以参数形式传过去吗,直接在函数a里面调用函数b不也可以实现callback函数的功能吗?
解答:
使用函数做参数就有下面的好处:当你a(b)的时候函数b就成了回调函数,而你还可以a(c)这个时候,函数c就成了回调函数。如果你直接在函数a里调用的话,这个回调函数就被限制死了。如果你写成了function a(){...;b();}就失去了变量的灵活性。
来个最简单的示例:
<script> function a(callback){ alert("主函数执行完了!"); callback(); } function b(){ alert("回调函数b!"); } function c(){ alert("回调函数c!"); } // callback函数以参数形式传递,保证变量的灵活性 a(b); a(c); </script>
出处:http://www.cnblogs.com/phpfensi/p/3913162.html