理解回调函数,首先要知道在JavaScript中,函数也是对象,它可以赋值给变量,也可以作为参数传递给另一个函数。比如:

var add=function(a,b){
console.log(a+b);
};
//
add(1,2);

这里定义了一个变量add,然后将一个匿名函数赋值给了这个变量;

接下来演示将函数作为参数传递给另一个函数,换句话说就是:将一个函数放在另一个函数(如 parent)的参数列表中,作为参数传递给parent,然后在parent函数体的某个位置执行它。其实这也就是回调函数了。看个小栗子:

var fun=function(callback){
var a=1,b=2,c=3;
var s=callback(a,b,c);
return s;
};
//调用fun
var t=fun(function(x,y,z){
return (x+y+z);
});
//
console.log(t);

首先是定义函数fun,fun有个参数callback(名字可以随便取嘛),在调用fun函数之前,并不知道这个callback是个什么;调用时给它传递的是个函数 function(x,y,z){return (x+y+z);}作为参数,所以s的值就为返回的三个数相加的值。这就是个简单的使用回调函数的过程。

最新文章

  1. 【Cocos2d-x for WP8 学习整理】(2)Cocos2d-Html5 游戏 《Fruit Attack》 WP8移植版 开源
  2. css absolute和float,relative,z-index的同异
  3. Webpack打包工具实时更新操作(启用观察者模式)
  4. 符号(void *)何解?符号(void **)又何解??
  5. backbone event 事件订阅 和发布 源码小读
  6. Oracle学习系列5
  7. HDU3695 - Computer Virus on Planet Pandora(AC自动机)
  8. HDOJ(HDU) 2123 An easy problem(简单题...)
  9. BZOJ 1023 [SCOI2009]生日快乐
  10. zabbix安装及配置(rpm包安装mysql,php,apache,zabbix)
  11. 理解对象模型图(Reading OMDS)
  12. 分布式版本控制系统Git-----7.Git 使用git rebase合并多次commit
  13. h5标签基础 meta标签
  14. 将texlive带的字体安装进linux系统字体库
  15. 命令提示符出现-bash-4.1$如何解决
  16. Others-Goldengate 数据同步
  17. CAShapeLayer 画直线
  18. windows安装ruby,DevKit安装rails,svn安装
  19. Mysql日常操作
  20. python中的内置函数总结

热门文章

  1. 【洛谷p3958】奶酪
  2. Golang环境配置
  3. vue 跳转页面返回时tab状态有误的解决办法
  4. 2018-8-10-sublime-Text-正则替换
  5. vue报错TypeError: Cannot read property 'protocol' of undefined
  6. linux为 rsync 添加开机启动
  7. etc/pass命令列表
  8. 一、C++类库与C#类库相互调用
  9. Ubuntu16.04 启用root权限
  10. openGL如何在改变窗口大小时,使自己的图形不被拉伸