JavaScript 回调函数
2016-05-31 13:35
351 查看
回调函数定义:
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
我的理解:
其实就是一个函数作为另一个函数的参数,然后主函数运行到使用那个函数参数的时候,就会去执行这个函数,完事了以后继续执行主函数,就这么简单。
举例:
//不带参数的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异步经常会弄混,下一章我具体来讲讲。
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
我的理解:
其实就是一个函数作为另一个函数的参数,然后主函数运行到使用那个函数参数的时候,就会去执行这个函数,完事了以后继续执行主函数,就这么简单。
举例:
//不带参数的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异步经常会弄混,下一章我具体来讲讲。
相关文章推荐
- scrollLoading插件实现图片延迟懒加载实例包涵html和js代码
- jsp清空缓存
- js根据数组对象中某属性进行排序
- Gantt Chart in JavaScript (HTML5) | FusionCharts
- 无插件ExtJs4简单甘特图 / 蓝讯
- 项目中的五级地址联动效果(js)
- JS--制表符99乘法表
- extjs学习之Ext.selection.CheckboxModel
- JS事件
- JsBridge 源码分析
- jsp中用到内置对象
- JS----图片显示出来后放大缩小
- JS函数
- JS--时间器控制图片显示
- JS 页面时间的停止与开始
- JS学习第一课
- Javascript权威指南
- JS设计模式之装饰者模式
- JS -- =、==和===
- JS函数声明和函数表达式的区别