Вопросы для подготовки к собеседованию на JavaScript / Angular разработчика

Список тем для подготовки перед собеседованием на JavaScript/Angular разработчика

JavaScript
• Примитивные типы данных
• NaN
• Строки в JS
• hoisting
• Function expression, declaration, named function expression
• Массивы Push/Pop vs Shift/Unshift
• Преобразовывающие методы для работы с массивами
• For…in/ for…of
• Глобальная область видимсоти
• Замыкание
• Модули через замыкания
• Управление памятью в JavaScript
• Контекст функции, this
• Ключевое слово new
• Копирование по ссылке и копирование по значению
• Object.defineProperty, getter и setter
• Статические методы
• Фабричные методы
• Call, apply, bind
• Каринг и частичное применение
• JSON, сериализация и десириализация
• Асинхронность
• Try/catch
• Прототипы и функции конструкторы
• Наследование в JavaScript
• Полифилы
• DOM/BOM
• События, всплытие и перехват

ES-6
• Let, const
• Деструктуризация
• Стрелочные функции
• Строки
• Set, Map, WeakSet, WeakMap
• Итераторы
• Генераторы

Angular
• SPA
• Составные части приложения
• Модули
• Компоненты
• Директивы
• View Encapsulation
• Pipes
• Жизненный цикл компонента и директивы. Lifecycle hooks
• Reactive Forms, Template Deriven Forms
• Lazy loading
• Ng-content
@Input, @Output, Two-way
• Services и Внедрение зависимостей
• Routing
• Observables & Promises