1. Опишите одну вещь, которую вы узнали сегодня на уроке.

Я изучил синтаксис JavaScript и основные команды JavaScript. Кроме того, упоминалась jQuery как библиотека JavaScript. Это то, что мне нужно изучить больше, чтобы получить понимание.

2. Опишите разницу между ‹script›, ‹script async› и ‹script defer›.

Лучше всего размещать тег скрипта внизу страницы непосредственно перед закрывающим тегом ‹/body›, когда сам тег скрипта добавляется без атрибутов в HTML. Размещение позволяет загружать и выполнять сценарий после того, как весь HTML-код будет проанализирован и загружен.

И async, и defer являются булевыми атрибутами и используются в теге script следующим образом:

‹script async src="script.js"› ‹/script›

‹скрипт отложить src="script.js"› ‹/script›

Эти атрибуты имеют смысл только при использовании скрипта в верхней части страницы, и они бесполезны, как в нижнем колонтитуле.

Сценарий с асинхронностью позволяет браузеру асинхронно получать сценарий, и сценарий выполняется, как только он будет готов, удерживая синтаксический анализ HTML, а затем возобновляя синтаксический анализ.

Сценарий с отсрочкой позволяет браузеру асинхронно извлекать сценарий, и сценарий выполняется после того, как HTML-код завершится синтаксическим анализом. Синтаксический анализ заканчивается так же, как когда тег script помещается в конец тега head, но в целом выполнение скрипта заканчивается намного раньше, потому что скрипт был загружен параллельно с парсингом HTML.

(Основная идея взята с https://flaviocopes.com/javascript-async-defer/)

3. Для чего нужны атрибуты данных?

Атрибуты данных хороши для обеспечения возможности обмена частной информацией между HTML и его DOM представлением с помощью скриптов. Эти атрибуты дают нам возможность встраивать пользовательские данные во все элементы html. Сохраненные данные можно использовать в JavaScript страницы для создания более привлекательного взаимодействия с пользователем.