JS之回调函数(callback)
2024-08-31 11:52:23
1.什么是回调函数?
-- 简单点说,一个函数被作为参数传递给另一个函数(在这里我们把另一个函数叫做“otherFunction”),回调函数在otherFunction中被调用。
--可以是匿名函数也可以是命名函数
2.回调函数的特点
(1)自己定义的函数
(2)你没有调用
(3)最终它执行了
3.常见的回调函数
(1)DOM事件回调函数
(2)定时器回调函数
(3)ajax请求回调函数
略。(后续相应内容补充)
(4)生命周期回调函数
略。(后续相应内容补充)
4.拓展
--代码分类
(1)初始化代码:一般的代码,包括设置定时器,绑定监听,发送ajax请求……
(2)回调代码:回调函数的代码
JavaScript引擎,在执行代码时,先执行初始化代码,等到初始化代码全部执行结束时,再执行回调代码。
执行结果:
重上述案例中,我们可以 看到回调函数不管在整个代码的什么位置,它都要比初始化代码执行完后才会执行。
上述代码执行流程:前两代码打开了定时器,此时JavaScript引擎将回调函数,和设置的时间交给定时器管理模块(事件管理模块),待到事件触发时,回调函数加入到回调队列中(callback queue),此时处于待处理状态。如果初始化代码全部执行结束,才会循环遍历回调队列中的回调函数。在上述代码中先加入队列的是延时时间为0ms的定时器,然后才是2000ms的定时器,由于队列的特性是先进先出,所以两个定时器间,先执行第二个定时器,在执行第一个定时器。
(此处涉及到时间循环模型,后续内容会补充,这里我们只需要大致了解回调函数是什么时候执行的)
最新文章
- SQL优化技术分析-3:SQL语句索引的利用
- LVM增大和减小ext4、xfs分区
- Elasticsearch安装
- Web性能--TCP的构成
- 即时通讯(IM-instant messager)
- BZOJ2080 : [Poi2010]Railway
- MVC项目中验证码的使用
- VPS常用工具
- [转]oracle10.2.0.1下载链接
- UNIX标准化及实现之选项
- VA自动补全QT
- Properties类读写.properties配置文件
- 【Java学习笔记之二十八】深入了解Java8新特性
- Sublime Text3 离线安装Package Control并使用GBK编码 --转自https://blog.csdn.net/swhard/article/details/78930371
- Android Studio RecyclerView用法
- Linux并发与同步专题 (4) Mutex互斥量
- (15)线程---Condition条件
- 数列分块入门九题(二):LOJ6280~6282
- Structs复习 命名空间
- 分布式Redis主备复制
热门文章
- dlopen代码详解——从ELF格式到mmap
- 2020.08.23 瞎扯周记之论短暂假期(QAQ)内要不要睡午觉
- iOS 报错: linker command failed with exit code 1 (use -v to see invocation) 原因
- 【IDEA】【SpringBoot】基于idea对springboot程序远程调试
- Java中nextInt和nextLine同时使用出现的问题
- 使用fiddler和安卓模拟器抓取安卓客户端数据包
- jmeter中接口测试出现乱码或不识别中文解决办法
- python变量及简单数据类型
- 《方法总结》C路的方法发现
- Linux实战(2):Linux传输文件