JavaScript脚本延迟加载的方式

40 阅读1分钟

延迟加载

  • 延迟加载就是等页面加载完成之后再加载js文件,js延迟加载有利于提高页面加载速度

延迟加载方式

  • defer属性
    • 给js脚本添加上defer属性,该属性会让脚本的加载与文档的解析同步,然后在文档解析完成之后再执行这个脚本文件,这样的话能够保证页面的渲染不被阻塞,多个设置了defer属性的脚本按规范来说是顺序执行的,但不同浏览器有不同的差异
  • async属性
    • 给js脚本添加async属性,该属性会使脚本异步加载,不会阻塞页面的解析过程,但是当脚本加载完成后立即执行js脚本,这个时候文档没有解析完的话同样会阻塞,多个async属性的脚本的执行顺序是不可测的,一般不会按照代码顺序来执行
  • 动态创建DOM
    • 动态创建DOM标签的方式,可以对文档的加载事件进行监听,当文档加载完后再动态的创建script标签引入js脚本
  • setTimeout
    • 设置一个定时器来延迟加载js脚本
  • 让js最后加载
    • 将js脚本放到文档的底部,使js脚本尽可能最后加载执行

-----------------------------------------------------------------------------------------------2024.5.3每日一题