JavaScript的同步加载、异步加载和延迟加载

本文介绍了HTML5中<script>元素的async和defer属性,这两种属性能够实现脚本的异步加载和延时加载,从而改善网页加载性能。async属性允许脚本并行下载并在下载完成后立即执行,而defer属性则会在文档解析完成后统一执行脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTML5给<script>元素定义了async属性——异步加载和defer属性——延时加载,用于改变处理脚本的行为,只适用于外部脚本文件。

正常的同步加载会阻塞文档加载即遇到js文件要实时进行下载并执行,如放在head里,则这时body文档不加载,js下载并执行后才可加载(此时页面为空),使用defer和async则使文档非阻塞加载;

defer为延时加载,遇到js文件要开通新的通道,下载文件并在</body>全部结束后执行;

aysnc为异步加载,遇到js文件开通新的通道,此时body进行加载,但当js文件下载完成后,要进行js文件的执行,此时文档加载暂停,js文件执行后,文档继续加载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值