回调函数(Callback Functions)
回调函数(Callback Functions)
因为函数和其他数据一样可以被赋值,删除,拷贝等,所以也可以把函数作为参数传入到另一个函数中。
实例一
Js代码
- function invoke_and_add(a,b){
- return a()+b();
- }
- function one(){
- return 1;
- }
- function two(){
- return 2;
- }
- invoke_and_add(one ,two);
结果为3;
理解:
调用函数invoke_and_add(one ,two)时还是跟普通函数一样,唯一不同的地方是,此时实参是两个函数,那么还是把实参传给形参,此时a=one(),b=two(),这其实就是javascript function里的
一种 function expression定义方式。然后就一路下去!
再来看看匿名函数的用法。
实例二
Js代码
- invoke_and_add(function(){return 1;},function(){return 2;})
我们用匿名函数替代了 one,two两个函数。
通过上面两个实例,回调函数的定义为:传递一个函数A到另一个函数B中,并且这个函数B执行函数A。我们就说函数A叫做回调函数。如果没有名称,就叫做匿名回调函数
回调函数的作用
主要有三个
1.当函数作为参