javascript defer和async属性

所有<script>元素都会按照它们在页面中出现的先后顺序依次被解析。在不使用deferasync属性的情况下,

只有在解析完前面<script>元素中的代码之后,才会开始解析后面<script>元素中的代码。

由于浏览器会先解析完不使用defer属性的<script>元素中的代码,然后再解析后面的内容,

所以一般应该把<script>元素放在页面最后,即主要内容后面,</body>标签前面。


1.defer属性延迟脚本加载,只适用于外部脚本加载

使用defer属性可以让脚本在文档完全呈现之后再执行(立即下载,延后执行);

延迟脚本总是按照指定它们的顺序执行。


2.async属性异步加载,只适用于外部脚本加载

使用async属性可以表示当前脚本不必等待其它脚本,也不必阻塞文档呈现,因此异步脚本不要在加载期间修改DOM;

不能保证异步脚本按照它们在页面中出现的顺序执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值