HTML атрибут <script> async

Определение и использование

async Атрибут - это булево свойство.

Если установлено async Атрибут, скрипт будет загружен параллельно с разбором страницы и выполнен сразу, как только он станет доступен. После полного скачивания скрипта разбор страницы прерывается, затем выполняется скрипт, и продолжается разбор оставшейся части страницы.

Обратите внимание:async Атрибут применим только к внешним скриптам (и должен использоваться только при наличии атрибута src).

Обратите внимание:Внешние скрипты можно выполнять несколькими способами:

  • Если уже установлено async: скрипт будет загружен параллельно с разбором страницы и выполнен сразу, как только он станет доступен (до завершения разборки)
  • Если уже установлено defer (но не async): скрипт будет загружен параллельно с разбором страницы и выполнен после завершения разборки страницы
  • Если ни async, ни defer не установлены: скрипт будет немедленно загружен и выполнен, блокируя разбор страницы, до тех пор, пока скрипт не выполнится

Пример

Ссылаемые скрипты будут загружены параллельно с разбором страницы и выполнены сразу, как только они станут доступны:

<script src="demo_async.js" async></script>

Попробуйте сами

Синтаксис

<script async>

Асинхронное выполнение скрипта

По умолчанию, когда браузер встречает элемент script, он останавливает обработку страницы и загружает и выполняет скрипт. Каждые элементы script выполняются последовательно (по порядку их определения) синхронно (во время загрузки и выполнения скрипта больше не обращают внимания на другие вещи).

Как способ обработки скриптов по умолчанию, синхронное выполнение自有 его значение. Однако, некоторые скрипты не требуют такой обработки, для таких скриптов можно использовать async Атрибут улучшает его производительность. Примером этого является отслеживающий скрипт (tracking script). Этот скрипт может отчитываться о посещениях пользователей на веб-сайте, чтобы рекламные компании могли настроить и показать рекламу в соответствии с привычками пользователей, или собирать статистику посещений для анализа и т.д. Эти скрипты независимы и, как правило, не взаимодействуют с элементами HTML-документа. Откладывать отображение страницы для ожидания их загрузки и отправки отчетов на сервер毫无 смысла.}

Использование async Атрибут после, браузер будет загружать и выполнять скрипт асинхронно, продолжая параллельно анализировать другие элементы HTML (включая другие элементы script). Если это используется правильно, это может значительно улучшить общую производительность загрузки.

Обратите внимание:Использование async Одним из важнейших последствий атрибута является то, что скрипты на странице могут больше не выполняться в порядке, в котором они определены. Поэтому не рекомендуется использовать async Атрибут.

Поддержка браузерами

Числа в таблице указывают на версию первого браузера, который полностью поддерживает этот атрибут.

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
8.0 10.0 3.6 5.1 15.0