Files
roma-dxunvrs 04fc7af4f4 Weekends
2026-09-07 08:24:01 +03:00

2.1 KiB
Raw Permalink Blame History

  • Язык для написания динамических сценариев, выполняемых на стороне клиента
  • Объектно-ориентированный скриптовый язык программирования
  • Динамическая типизация
  • Слабая типизация
  • Автоматическое управление памятью
  • Прототипное программирование
  • Функции как объекты первого класса

Особенности синтаксиса

  • Все идентификаторы регистрозависимы
  • В названиях переменных можно использовать буквы, подчеркивание, символ доллара, арабские цифры
  • Названия переменных не могут начинаться с цифры
  • Комментарии как в джаве

Структура языка

  • Ядро (ECMAScript - спецификация языка)
  • Объектная модель браузера (BOM)
  • Объектная модель документа (DOM)

Внешнее подключение к HTML

Через head

Нужен атрибут defer - чтобы скачивать скрипт в фоновом режиме и пользователь не видел белый экран (DOM строится сверху вниз)

...
<head>
	<script src="main.js" defer></script>
</head>
...

Через body

DOM создается сверху вниз, поэтому указываем в самом низу

...
<body>
	...
	<script scr="main.js"></script>
</body>

Внутренний скрипт

<body>
    <h1>Тест</h1>

    <script>
        // Чистый JS код прямо в HTML:
        const title = document.querySelector('h1');
        console.log("Заголовок найден:", title.textContent);
    </script>
</body>

В атрибутах

[!warning] Антипаттерн

<button onclick="alert('Привет!')">Нажми меня</button>