Когда веб-браузер анализирует HTML-страницу, если он обнаруживает элемент <script>
, он прекращает синтаксический анализ HTML и немедленно запускает JavaScript в элементе <script>
(или связан с ним) *.
Код JavaScript может изменить DOM страницы (Document Object Model - программное представление HTML-кода, к которому может обращаться JavaScript) и, таким образом, изменить отображаемый HTML-код, отображаемый браузером. (Он также может назначать функции встроенным обработчикам событий на узлах DOM, чтобы можно было запускать некоторый JavaScript, например, когда пользователь нажимает на ссылку или когда документ заканчивает загрузку.)
Таким образом, программист веб-страницы действительно несет полную ответственность за это. Браузеры не догадываются, что делать с загруженным JavaScript. Они бегут и подчиняются этому.
(* Это немного упрощает: атрибут defer
может препятствовать немедленному запуску скрипта.)