javascript Асинхронная загрузка скриптов async/defer -- по порядку или в произольном порядке

Существует два возможных способа (HTML атрибута тэга script) загрузить скрипты асинхронно:

  1. async -- загрузка асинхронна, выполнение без учета порядка.
    То есть, в таком коде (с async) первым сработает тот скрипт, который раньше загрузится:
        <script src="1.js" async></script>
        <script src="2.js" async></script>
    
  2. defer -- загрузка асинхронна, начало выполнения в порядке пересчиления в HTML документе.

    А в примере ниже, первым сработает всегда 1.js, а скрипт 2.js, даже если загрузился раньше, будет его ждать:

    <script src="1.js" defer></script>
    <script src="2.js" defer></script>

Подробности: https://learn.javascript.ru/external-script

Key Words for FKN + antitotal forum (CS VSU):