Тег <script> используется для описания JavaScript кода в HTML документе. Тег <script> может включать в себя как сам JavaScript код, так и ссылку на внешний файл с JavaScript кодом. Путь внешнего файла указывается при помощи атрибута src. Если в теге содержится ссылка на внешний файл, то тег <script> должен быть пустым.

Если вы подключаете внешний файл с JavaScript кодами, не включайте в тот же самый тег <script> встроенный JavaScript код.

Тег <script> может располагаться как в элементе <head>, так и внутри элемента <body>. Работа скриптов не зависит от их местоположения в HTML-документе, однако скрипты, которые должны быть выполнены в первую очередь, должны быть расположены в заголовке документа.

Тег <script> можно использовать в HTML-документе неограниченное количество раз.

Синтаксис

Тег <script> - парный, закрывающий тег (</script>) обязателен.

Существует несколько способов выполнения внешних скриптов:

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

    <!DOCTYPE html>
    <html>
      <head>
        <title>Заголовок окна веб-страницы</title>
      </head>
      <body>
        <p id="example"></p>
        <script>
          document.getElementById("example").innerHTML = "Мой первый JavaScript код";
        </script>
      </body>
    </html>

    Результат

    scriptexample1

    Атрибуты

    Атрибут Значение Описание
    async async Указывает, что скрипт будет выполняться асинхронно. (Только для внешних скриптов).
    Не поддерживается в IE9 и более ранних версиях.
    charset charset Задает кодировку символов, используемых во внешнем файле с JavaScript кодом.
    defer defer Указывает, что скрипт должен быть выполнен после загрузки страницы. (Только для внешних скриптов).
    src URL Указывает путь внешнего файла с JavaScript кодом. (Может быть указан как относительный, так и абсолютный URL).
    type media_type Определяет MIME тип скрипта.

    Тег <script> поддерживает также глобальные атрибуты и атрибуты событий.

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

chrome edge firefox safari opera

Практикуйте свои знания

What is the purpose of the <script> tag in HTML?
Считаете ли это полезным?