这里介绍下回调函数应用场景,同时涉及到的有同步异步处理
函数也是一种数据类型,既可以当做参数进行传递,也可以当做方法的返回值
1、参数
2、返回值
注意:
一般情况下,把函数当做参数传递,就是为了获取函数内部的异步操作结果
(1)同步函数
(2)异步函数
详见下节文章
首先需要了解异步API,举例如下
输出结果为1、3、2
分析:因为代码在运行过程中不会等待定时器,哪怕时间为0S,也会先执行同步代码,再执行异步代码
这里便涉及到JS的两个知识点:单线程、时间轮询.
退一步将,就算setTimeout没有放置时间,也是最后执行
对之前函数做下更改
语法角度出发进行分析:内部return对应的是setTimeout的回调函数,与最外部函数无关,所以也没有办法在执行add()函数时获取里面的异步操作数据
回调函数案例:
.