回调函数(Callback Functions)
因为函数和其他数据一样可以被赋值,删除,拷贝等,所以也可以把函数作为参数传入到另一个函数中。
实例一
- function invoke_and_add(a,b){
- return a()+b();
- }
- function one(){
- return 1;
- }
- function two(){
- return 2;
- }
- invoke_and_add(one ,two);
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( function (){ return 1;}, function (){ return 2;})
invoke_and_add(function(){return 1;},function(){return 2;})
我们用匿名函数替代了 one,two两个函数。
通过上面两个实例,回调函数的定义为:传递一个函数A到另一个函数B中,并且这个函数B执行函数A。我们就说函数A叫做回调函数。如果没有名称,就叫做匿名回调函数
回调函数的作用
主要有三个
1.当函数作为参数传递的时候,不用为这个函数定义一个名称,这样的好处是减少了全局变量。
2.节省了大量的代码。
3.提高了程序的性能。