Тег <script>


Описание

Тег <script> предназначен для встраивания или подключения исполняемого JavaScript-кода в HTML-документ. Также может использоваться для других скриптовых языков (ранее использовался для VBScript). Поддерживает как встроенный код, так и внешние файлы.

Базовый синтаксис:
<script> alert('Привет, мир!'); </script> <script src="app.js"></script>
Примеры использования:
<!-- Встроенный скрипт --> <script> document.addEventListener('DOMContentLoaded', function() { console.log('DOM загружен'); }); </script> <!-- Внешний скрипт с defer --> <script src="main.js" defer></script> <!-- Модульный скрипт --> <script type="module" src="app.mjs"></script> <!-- Строгая проверка целостности --> <script src="https://example.com/script.js" integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/ux..." crossorigin="anonymous"> </script>

Ключевые особенности:

  • Может располагаться в <head> или <body>
  • Без атрибутов async/defer блокирует парсинг HTML
  • Поддерживает динамическое создание через JavaScript
  • Тип "module" включает поддержку ES6 модулей
  • Может содержать не-JavaScript код при указании type

Рекомендации по использованию:

  • Подключайте скрипты перед закрывающим </body> (если нет defer/async)
  • Используйте defer для скриптов, зависящих от DOM
  • Для критически важного кода используйте встроенные скрипты
  • Всегда указывайте атрибут type для не-JavaScript контента
  • Используйте Subresource Integrity для CDN-скриптов
Оптимальное подключение:
<!DOCTYPE html> <html> <head> <script src="analytics.js" async></script> </head> <body> <!-- Контент --> <script src="main.js" defer></script> </body> </html>

Тег <script> является фундаментальным элементом для добавления интерактивности на веб-страницы, поддерживая различные стратегии загрузки и выполнения JavaScript-кода.


Атрибуты

async Асинхронное выполнение скрипта
crossorigin Настройки CORS для скрипта
defer Отложенное выполнение скрипта
integrity Контрольная сумма для проверки целостности
nomodule Не выполнять в поддерживающих модули браузерах
referrerpolicy Политика отправки referrer
src URL внешнего скрипта
type MIME-тип скрипта
accesskey Горячая клавиша для активации
class CSS-классы для стилизации
id Уникальный идентификатор
style Инлайновые стили
title Всплывающая подсказка
charset Кодировка символов (устарел)
language Язык скрипта (устарел)

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

3.0 1.0 3.0 1.0 1.0