Вернуться в каталог собеседований

Тестовое собеседование #2. Вопрос по JavaScript на техническом интервью Junior Frontend-разработчика

Запись тестового технического интервью по JavaScript для Junior Frontend: теория сочетается с проверками на лайвкодинге. Ведущий разбирает ответы кандидата по базовым и асинхронным механизмам языка.

Александр Дудукало
  • Опубликовано на YouTube:
  • Просмотры на YouTube: 3,8 тыс.
  • Лайки на YouTube: 147
Открыть на YouTube

Таймлайн

Коротко о видео

Это мок-интервью по JavaScript для фронтенд-разработчика: ведущий последовательно проверяет знания кандидата и затем даёт задания на лайвкодинг. Обсуждаются области видимости и hoisting, типы и преобразования, функции и `this`, массивы, таймеры, `Promise` и Event Loop, а также ссылки и копирование объектов. Кандидат честно отмечает пробелы; в практической части проверяются результаты через запуск кода, но сам экранный код в captions не представлен.

Затронутые темы

Что взять на заметку

  • Повторить, где исполняется JavaScript: его запускает движок браузера или среда вроде Node.js, а не сам редактор кода.
  • Чётко различать `var`, `let` и `const`: повторное присваивание, области видимости, hoisting и temporal dead zone; отдельно знать разницу между `Function Declaration` и `Function Expression` при вызове до объявления.
  • Освежить типы JavaScript: `undefined`, `null`, `symbol`, `bigint`, примитивы и объекты; помнить особенности `typeof null`, массива и функции.
  • Уметь объяснить неявное приведение типов при `==` и отсутствие такого приведения при `===`, а также различие `null` и `undefined`.
  • Подготовить короткие объяснения замыканий, ссылочной природы объектов, контекста `this`, лексического `this` у стрелочных функций и назначения `call`, `apply`, `bind`.
  • Практически знать методы массивов: `push`, `shift`, `filter`, `sort`, `reduce`, а также разницу между мутирующими и немутирующими методами.
  • Разобрать состояния `Promise` (`pending`, `fulfilled`, `rejected`), обработку асинхронных цепочек и роль Event Loop; для объектов — деструктуризацию, поверхностное копирование и ограничения копирования через `JSON.stringify`/`JSON.parse`.
  • На тренировках писать небольшие задачи без подсказок: сумму массива, деструктуризацию объекта, проверку ссылочного копирования и вызовы функций до их объявления.

Рекомендуем посмотреть