Атрибут defer
Запуститься лише після завантаження усієї сторінки і збереже порядок запуску скриптів
<script src="1.js" defer></ script> - перший
<script src="2.js" defer></ script> - другий
Атрибут async
При виявленні <script async src="1.js"> браузер не зупиняє обробку HTML, а спокійно працює далі. Коли скрипт буде завантажений — він виконається, не чекаючи на завантаження усієї сторінки.
<script async src="1.js">
<script async src="2.js">
// першим запуститься той скрипт,
// що швидше завантажиться.
Обидва працюють асинхронно