前言

其实回调函数简单通俗点就是当有a和b两个函数,当a作为参数传给b,并在b中执行,这时a就是一个回调(callback)函数,如果a是一个匿名函数,则为匿名回调函数那下面们来通过一个实例来具体解释下Javascript回调函数怎么使用。

实例

在很久很久以前,有一个人。

 var person;

他是个人,也就是一个对象。

person= {}; // 在JavaScript中,花括号就代表是一个对象

他有个名字叫小明。

person.name = '小明';

看一下是不是真的叫小明。

alert(person.name);

嗯,有一天,小明捡到了10块钱。

person.money = '10块钱';

有了钱就要花,于是他打算把10块钱用掉。

小明有一个花钱的方法 spendMoney ()

person.spendMoney =function(){  alert(this.name +"用 "+this.money +" 块钱买了漫画书!"); 

运行:

person.spendMoney();
 

弹出提示:小明用10块钱买了漫画书。

好了,问题来了,小明花钱就非得买漫画书吗,肯定不是。

事实情况应该是,这钱怎么办,还是由他自己说了算。因为钱在小明的口袋里。

所以,就可以用回调函数了。

回调函数本身就是一个数据类型。

在javaScript中,函数的地位和java中的Stringintboolean等等都是一样的,都可以看成是一个数据类型。

既然是数据类型,当然可以当成参数传递。

于是就应该这样:

person.spendMoney =function(doSomeThing){  doSomeThing();
 

打了个括号就是执行函数的意思。

没打括号的函数,就是和Stringint一样的玩意儿。

是一个数据类型。

一样的。

JAVA里面会这么写:

String str ="HelloWorld!";

在JavaScript中,函数也是一样的。

var say =function(){
 
   alert('HelloWorld');
 
}

这时候的say就是一个数据类型。

因为没有打括号,打了括号他才会执行!

小明用十块钱做什么,他自己说了算。

person.spendMoney(function(){});

这样就是把函数传进去了。

把函数传入spendMoney方法的目的就是让函数在里面执行的。

person.spendMoney =function(doSomeThing){  doSomeThing(); 

所以:

里面就打了括号,代表要执行这个函数。

具体做什么,自己决定。

person.spendMoney(function(){  alert('还是把钱存起来吧!'); })

总结

就是可以将函数作为一个参数,传入一个方法内,并且能够在该方法中执行这个函数,这也就是js特有的回调函数的魔力。

以上就是关于Javascript回调函数用法的全部内容,希望对大家的学习和工作能有所帮助。如果有疑问可以留言讨论。

最新文章

  1. 【贪心】HDU 1257
  2. spring boot 打包成jar 包在发布到服务器上
  3. WPF中获取形状范围
  4. sharepoint 2010 如何给文档库或自定义列表添加评论功能
  5. git rm
  6. 帝国cms数据表详细说明
  7. 5 MySQL索引
  8. 分享一个jsonp劫持造成的新浪某社区CSRF蠕虫
  9. bzoj 1283 序列 - 费用流
  10. Linux下安装numpy
  11. Helm简介
  12. Bootstrap3.0学习第五轮(表格)
  13. camstar --调用自定义的CDO报帐号没有执行权限的错误
  14. Cacti Install Error
  15. mybatis 易百练习笔记
  16. response提交原理(转)
  17. 027class_part1
  18. HDU 1275 两车追及或相遇问题(相遇和追及公式)
  19. Azure服务器上不了外网
  20. Python3.x:PDFMiner3k在线、本地解析pdf

热门文章

  1. Mysql学习笔记(002)-基础查询
  2. 阿里云文件存储(NAS)助力业务系统承载双十一尖峰流量
  3. position:fixed 造成页面抖动解决办法
  4. AcWing 196. 质数距离(筛法+离散化)打卡
  5. table标签详解
  6. 微信小程序利用canvas生成海报分享图片
  7. mongo索引(转)
  8. python Map()和reduce()函数
  9. base64图片下载
  10. python列表中enumerate和zip函数用法