一、前奏
在谈回调函数之前,先看下下面两段代码:
不妨猜测一下代码的结果。
- 1
- 2
- 3
- 4
- 5
如果你测试了,就会发现:
- 1
- 2
二、js中函数可以作为参数传递
再看下面的两段代码:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
与
- 1
- 2
- 3
- 4
上面第一段代码是将say方法作为参数传递给execute方法
第二段代码则是直接将匿名函数作为参数传递给execute方法
实际上:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
三、回调函数易混淆点——传参
如果回调函数需要传参,如何做到,这里介绍两种解决方案。
- 将回调函数的参数作为与回调函数同等级的参数进行传递
- 回调函数的参数在调用回调函数内部创建
原文章:http://blog.youkuaiyun.com/baidu_32262373/article/details/54969696