Skip to main content

script 和 script async 和 script defer 的区别?

<script>

  • 加载->执行->往后解析
  • 加载会阻塞解析
  • 多个 JS 按顺序执行

<script async>

  • 不影响 DOM 的解析和其他资源的加载
  • 不保证顺序
  • 不保证时机

<script defer>

  • 不影响 DOM 的解析和其他资源的加载,
  • 保证在 DOM 资源准备就绪后再执行
  • 并且对于多个 defer 的外置 js 按顺序执行