关于defer和async执行顺序的疑问

来源:4-5 script标签属性

Yuri沫

2019-12-29 14:31:50

按照课件说的,
1. defer是在页面已完成加载后才会执行,我理解应该是在页面内容出来后才去弹窗
2. async是一旦脚本可用,则会异步执行,我理解是和页面加载一起在执行,那感觉应该是在页面加载完成前就弹窗

可是老师的例子是先defer后页面最后async,不太懂为什么

写回答

1回答

好帮手慕星星

2019-12-29

同学你好,问题解答如下:

1、defer是同步的,页面内容加载完之后才会执行。但是alert会阻断页面中内容输出,在前面没有添加属性时的例子中可以看到:

http://img.mukewang.com/climg/5e085ebd098efff709500290.jpg

先弹框再显示页面中的内容。所以这里即使添加上了defer属性,效果也是一样的,只不过是执行顺序的问题。

2、async是异步执行,也就是等所有同步执行完了之后再去执行,所以是等defer以及页面内容加载完之后再弹出来的。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 5012 问题

查看课程