async和defer的作用是什么?有什么区别

  1. 同步与异步的概念:
    同步:一件事情的开始,必须等待上一件事情的完成。若上一件事情没有完成,这件事情就会一直等待它完成,再执行。
    异步:一件事情的开始,不必等待上一件事情的完成。这两个事情可以分开进行的。

  2. async和defer都是可以让js文件异步调用。

  3. 区别:
    async可以让js文件立刻进行异步调用,仅适用于外部脚本(只有在使用 src 属性时),同时这个是html5的新属性。
    支持的浏览器:


    Paste_Image.png
            defer虽然也是异步调用,但是其的执行要等待页面元素解析之后,同时在DOMContentLoaded事件触发之前才可以。是一种延迟性的异步加载。
           支持的浏览器:
    
Paste_Image.png
          DOMContentLoaded事件:是让网页的DOM元素解析之后,立刻触发,而无须等待其他元素(css样式表、图像、iframe)的加载。http://www.html5jscss.com/mian_ready.html

**严禁转载,违者必究!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容