03

Вопросы по теории

Вопросы по теории курса

  1. Что значит “JS слабо типизированный язык”?
  2. Что значит “JS язык с динамической типизацией”?
  3. Типы значений в JS. Оператор определения типа. Истинные и ложные значения в JS.
  4. Операнд и оператор. Примеры унарных, бинарных и тернарного оператора в JS.
  5. Циклическое исполнение кода в JS. Перебор элементов массива.
  6. Создание функций в JS. Сигнатура функции.
  7. Параметры функции и аргументы. Остаточные параметры и оператор расширения.
  8. Концепт «раннего возврата» из функции.
  9. Массивы и их методы filter, map, reduce, sorted и toSorted.
  10. Объекты и работа с ними. Создание, ключи, значения, свойства.
  11. Назначение статических анализаторов кода (например ESLint)
  12. Объектная модель документа (DOM), иерархия и взаимосвязь.
  13. Основные классы DOM-узлов: EventTarget, Node, Element, HTMLElement и др.
  14. Объекты Navigator, Window и Document.
  15. Работа с узлами DOM-дерева.
  16. Фазы жизненного цикла события.
  17. Обработка событий и дополнительные опции при добавлении обработчика событий.
  18. Делегирование обработки событий.
  19. Объект события и примеры событий пользовательского интерфейса (UIEvent).
  20. Модальные окна, элемент dialog и его методы.
  21. Объект FormData, примеры методов, перебор его свойств.
  22. Constraint Validation API, атрибуты полей форм для добавления ограничений.
  23. Цель и методы валидации данных на стороне клиента.
  24. Псевдоклассы для изменения стилей для полей формы при валидации и их отличия.
  25. ARIA, Первое правило aria, aria-атрибуты: aria-describedby, aria-live и aria-invalid.
  26. Автозаполнение полей форм. Возможности и ограничения.
  27. URL. Определение, назначение, корректный вид.
  28. Замыкание и примеры применения.
  29. Таймеры в JS. Создание и удаление.
  30. Функции обратного вызова (callbacks).
  31. Асинхронное программирование.
  32. Общий принцип работы event loop. Структуры данных стек и очередь.
  33. Объект Promise. Его создание, функции, методы, состояния.
  34. Статические методы Promise. Примеры их использования.
  35. Fetch API. Список используемых объектов, функция fetch и ее параметры.
  36. Объект Response. Его свойства и методы.
  37. Формат JSON. Глобальный объект JSON и его методы.
  38. Хранение данных на клиенте.
  39. localStorage и sessionStorage. Разница, их методы.
  40. Асинхронные функции async/await. Принцип работы и возвращаемое значение.
  41. Проблема “цветных” функций.
  42. Протокол http. Сообщения и их структура, запрос и ответ.
  43. Использование ключевого слова this в функция и классах.
  44. Функция-конструктор. Свойство prototype. Создание объекта.
  45. Создание класса, наследование, задача функции super(), создание экземпляра класса.
  46. Поля и методы классов. Приватные поля и методы, статические методы.
  47. Аксессоры в объктах и классах. Назначение, примеры использования.
  48. Server-sent Events. Принцип работы, заголовки, формат сообщений.
  49. Объект EventSource. Возможности, методы, события.
  50. Идея реактивности при разработке пользовательских интерфейсов.
  51. Шаблон наблюдатель Observer (классы, поля, методы).
  52. Шаблон сигнал Signal и Effect. Принцип работы, отличие от наблюдателя.