源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

关于Javascript回调函数的一个妙用

  • 时间:2021-06-18 17:06 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:关于Javascript回调函数的一个妙用
[b]前言[/b] 其实回调函数简单通俗点就是当有a和b两个函数,当a作为参数传给b,并在b中执行,这时a就是一个回调(callback)函数,如果a是一个匿名函数,则为匿名回调函数那下面们来通过一个实例来具体解释下Javascript回调函数怎么使用。 [b]实例[/b] 在很久很久以前,有一个人。
var person;
他是个人,也就是一个对象。
person= {}; // 在JavaScript中,花括号就代表是一个对象
他有个名字叫小明。
person.name = '小明';
看一下是不是真的叫小明。
alert(person.name);
嗯,有一天,小明捡到了10块钱。
person.money = '10块钱';
有了钱就要花,于是他打算把10块钱用掉。 小明有一个花钱的方法 [code]spendMoney ()[/code]
person.spendMoney =function(){  alert(this.name +"用 "+this.money +" 块钱买了漫画书!");  }
运行:
person.spendMoney();
弹出提示:小明用10块钱买了漫画书。 好了,问题来了,小明花钱就非得买漫画书吗,肯定不是。 事实情况应该是,这钱怎么办,还是由他自己说了算。因为钱在小明的口袋里。 所以,就可以用回调函数了。 回调函数本身就是一个数据类型。 在javaScript中,函数的地位和java中的[code]String[/code],[code]int[/code],[code]boolean[/code]等等都是一样的,都可以看成是一个数据类型。 既然是数据类型,当然可以当成参数传递。 于是就应该这样:
person.spendMoney =function(doSomeThing){  doSomeThing();  }
打了个括号就是执行函数的意思。 没打括号的函数,就是和[code]String[/code],[code]int[/code]一样的玩意儿。 是一个数据类型。 一样的。 JAVA里面会这么写:
String str ="HelloWorld!";
在JavaScript中,函数也是一样的。
var say =function(){ 

   alert('HelloWorld');

}
这时候的[code]say[/code]就是一个数据类型。 因为没有打括号,打了括号他才会执行! 小明用十块钱做什么,他自己说了算。
person.spendMoney(function(){});
这样就是把函数传进去了。 把函数传入[code]spendMoney[/code]方法的目的就是让函数在里面执行的。 所以:
person.spendMoney =function(doSomeThing){  doSomeThing(); }
里面就打了括号,代表要执行这个函数。 具体做什么,自己决定。
person.spendMoney(function(){  alert('还是把钱存起来吧!'); });
[b]总结[/b] 就是可以将函数作为一个参数,传入一个方法内,并且能够在该方法中执行这个函数,这也就是js特有的回调函数的魔力。 以上就是关于Javascript回调函数用法的全部内容,希望对大家的学习和工作能有所帮助。如果有疑问可以留言讨论。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部