Вопросы по теории курса
- Что значит “JS слабо типизированный язык”?
- Что значит “JS язык с динамической типизацией”?
- Типы значений в JS. Оператор определения типа. Истинные и ложные значения в JS.
- Операнд и оператор. Примеры унарных, бинарных и тернарного оператора в JS.
- Циклическое исполнение кода в JS. Перебор элементов массива.
- Создание функций в JS. Сигнатура функции.
- Параметры функции и аргументы. Остаточные параметры и оператор расширения.
- Концепт «раннего возврата» из функции.
- Массивы и их методы filter, map, reduce, sorted и toSorted.
- Объекты и работа с ними. Создание, ключи, значения, свойства.
- Назначение статических анализаторов кода (например ESLint)
- Объектная модель документа (DOM), иерархия и взаимосвязь.
- Основные классы DOM-узлов: EventTarget, Node, Element, HTMLElement и др.
- Объекты Navigator, Window и Document.
- Работа с узлами DOM-дерева.
- Фазы жизненного цикла события.
- Обработка событий и дополнительные опции при добавлении обработчика событий.
- Делегирование обработки событий.
- Объект события и примеры событий пользовательского интерфейса (UIEvent).
- Модальные окна, элемент dialog и его методы.
- Объект FormData, примеры методов, перебор его свойств.
- Constraint Validation API, атрибуты полей форм для добавления ограничений.
- Цель и методы валидации данных на стороне клиента.
- Псевдоклассы для изменения стилей для полей формы при валидации и их отличия.
- ARIA, Первое правило aria, aria-атрибуты: aria-describedby, aria-live и aria-invalid.
- Автозаполнение полей форм. Возможности и ограничения.
- URL. Определение, назначение, корректный вид.
- Замыкание и примеры применения.
- Таймеры в JS. Создание и удаление.
- Функции обратного вызова (callbacks).
- Асинхронное программирование.
- Общий принцип работы event loop. Структуры данных стек и очередь.
- Объект Promise. Его создание, функции, методы, состояния.
- Статические методы Promise. Примеры их использования.
- Fetch API. Список используемых объектов, функция fetch и ее параметры.
- Объект Response. Его свойства и методы.
- Формат JSON. Глобальный объект JSON и его методы.
- Хранение данных на клиенте.
- localStorage и sessionStorage. Разница, их методы.
- Асинхронные функции async/await. Принцип работы и возвращаемое значение.
- Проблема “цветных” функций.
- Протокол http. Сообщения и их структура, запрос и ответ.
- Использование ключевого слова this в функция и классах.
- Функция-конструктор. Свойство prototype. Создание объекта.
- Создание класса, наследование, задача функции super(), создание экземпляра класса.
- Поля и методы классов. Приватные поля и методы, статические методы.
- Аксессоры в объктах и классах. Назначение, примеры использования.
- Server-sent Events. Принцип работы, заголовки, формат сообщений.
- Объект EventSource. Возможности, методы, события.
- Идея реактивности при разработке пользовательских интерфейсов.
- Шаблон наблюдатель Observer (классы, поля, методы).
- Шаблон сигнал Signal и Effect. Принцип работы, отличие от наблюдателя.