defer和async区别

作者: chouchou723 | 来源:发表于2018-11-12 14:02 被阅读0次

    主要记录下defer和async的区别:
    在没有defer或者async的情况下,会立即执行脚本,所以通常建议把script放在body最后

    <script src="script.js"></script>
    

    有async的话,加载和渲染后续文档元素的过程将和 script.js 的加载与执行并行进行(异步)。
    但是多个js文件的加载顺序不会按照书写顺序进行

    <script async src="script.js"></script>
    

    有derer的话,加载后续文档元素的过程将和 script.js 的加载并行进行(异步),但是 script.js 的执行要在所有元素解析完成之后,DOMContentLoaded 事件触发之前完成,并且多个defer会按照顺序进行加载。

    <script defer src="script.js"></script>
    
    微信图片_20181112140004.png

    所以区别主要在于一个执行时间,defer会在文档解析完之后执行,并且多个defer会按照顺序执行,而async则是在js加载好之后就会执行,并且多个async,哪个加载好就执行哪个

    相关文章

      网友评论

        本文标题:defer和async区别

        本文链接:https://www.haomeiwen.com/subject/lptcfqtx.html