Все вопросы на собеседовании на Backend Node.js разработчика, вместе с ответами

Самая большая база вопросов с технических собеседований, вместе с ответами

Что такое рекурсия в JavaScript?

Какой принцип лежит в основе рекурсии в JavaScript, и как функции могут вызывать сами себя? Опишите, как рекурсия используется для решения задач, и укажите, какие условия должны быть выполнены, чтобы рекурсия завершилась корректно.
JavaScriptWeb

Junior, Trainee

Зачем нужен TypeScript?

Объясните, почему TypeScript используется в разработке, какие проблемы он решает и какие преимущества дает по сравнению с JavaScript. Укажите, как TypeScript влияет на процесс разработки и поддержания кода.
TypeScript

Junior, Trainee

Какие есть механизмы обработки ошибок в JavaScript?

Опишите, какие механизмы существуют в JavaScript для обработки ошибок. Как можно обрабатывать ошибки синхронного и асинхронного кода, и какие конструкции и методы помогают управлять исключениями?
JavaScriptWeb

Junior, Trainee

Что такое абстрактный класс в TypeScript?

Объясните, что представляет собой абстрактный класс в TypeScript, в каких ситуациях он используется и чем он отличается от обычных классов.
TypeScript

Junior, Trainee

Какие есть типы данных в JavaScript?

Перечислите все типы в JavaScript'е, которые вы знаете.
JavaScriptWeb

Junior, Trainee

Что такое display: grid и как его использовать?

Расскажите, что представляет собой CSS-свойство display: grid, как оно помогает создавать сложные макеты и какие ключевые концепции необходимо понимать для его использования.
JavaScriptWebCSS

Junior, Trainee

Что такое статические поля или методы у класса в JavaScript?

Объясните, что такое статические поля и методы в JavaScript. В каких случаях стоит использовать статические члены класса и чем они отличаются от обычных полей и методов, принадлежащих экземплярам класса?
JavaScriptWeb

Junior, Trainee

Для чего нужен оператор расширения (spread) в JavaScript?

Объясните, что такое оператор расширения (spread) в JavaScript, как он работает и в каких ситуациях используется. Приведите примеры его применения для работы с массивами и объектами.
JavaScriptWeb

Junior, Trainee

Как проверить, что объект является массивом в JavaScript?

С помощью какого метода в JavaScript можно сделать проверку на то, что значения является массивом?
JavaScriptWeb

Junior, Trainee

Что такое enum в TypeScript?

Опишите, что представляет собой enum в TypeScript, как он используется и в каких ситуациях может быть полезен. Укажите, как можно объявить и применять enum в коде.
TypeScript

Junior, Trainee

Как можно получить все поля объекта в виде массива в JavaScript?

Объясните, как в JavaScript можно получить все ключи или значения объекта в виде массива. Какие встроенные методы позволяют преобразовать объект в массив и как это может использоваться в различных задачах?
JavaScriptWeb

Junior, Trainee

Что такое деструктуризация объекта в JavaScript?

Как в JavaScript можно извлечь данные из объекта и присвоить их переменным в более удобном формате? Объясните, каким образом деструктуризация позволяет извлекать значения из объекта и какие преимущества она предоставляет при работе с объектами и массивами.
JavaScriptWeb

Junior, Trainee

Что такое intersection (пересеченные) типы в TypeScript?

Опишите, что такое intersection (пересеченные) типы в TypeScript и как они работают. Как их использовать для объединения нескольких типов в один, и в каких ситуациях они применимы?
TypeScript

Junior, Trainee

Какие методы перебора массивов в JavaScript вы знаете, и в чем их отличие?

Какие способы перебора элементов массива в JavaScript существуют, и как они отличаются друг от друга? Опишите, как работают методы `forEach`, `for...of`, и `for...in`, их особенности и случаи использования. Уточните, какой из них лучше подходит для работы с массивами и почему.
JavaScriptWeb

Junior, Trainee

Как можно соединить несколько типов в один в TypeScript?

Опишите, как в TypeScript можно соединить несколько типов в один. Какие подходы существуют для объединения типов и когда они могут быть полезны?
TypeScript

Junior, Trainee

Что такое защитники типов (type guards) в TypeScript?

Объясните, что представляют собой защитники типов (type guards) в TypeScript, какие бывают их виды и как они применяются для проверки типов в коде.
TypeScript

Junior, Trainee

Для чего нужно ключевое слово static в JavaScript?

Рассмотрите, как и в каких ситуациях используется ключевое слово static в JavaScript. Как оно применяется в контексте классов и какие ограничения или особенности имеет?
JavaScriptWeb

Junior, Trainee

Как отцентрировать блок с помощью CSS?

Расскажите, какие существуют методы центрирования блоков в CSS, как они работают и в каких ситуациях применяются. Укажите, как можно выровнять блок по горизонтали и вертикали.
JavaScriptWebCSS

Junior, Trainee

Для чего нужен оператор остаточности (rest) в JavaScript?

Объясните, как работает оператор остаточности (rest) в JavaScript и в каких случаях он используется. Как его можно применять для сбора остаточных параметров функции или для работы с массивами и объектами?
JavaScriptWeb

Junior, Trainee

Что такое DOM?

Опишите, что представляет собой объектная модель документа (DOM) и как она используется при работе с веб-страницами.
JavaScriptWebHTML

Junior, Trainee

Что такое замыкание в JavaScript?

Объясните, что такое замыкание в JavaScript и как оно работает. В каких ситуациях оно возникает и как используется для сохранения состояния или работы с приватными данными?
JavaScriptWeb

Junior, Trainee

Как можно проверить тип переменной в JavaScript?

Опишите, какие существуют способы проверки типа переменной в JavaScript. Как с помощью различных операторов и функций можно определить, к какому типу данных относится значение?
JavaScriptWeb

Junior, Trainee

Что такое LocalStorage и SessionStorage?

Объясните, что такое LocalStorage и SessionStorage в JavaScript, как они используются для хранения данных и в чем различия между ними.
JavaScriptWeb

Junior, Trainee

Назовите методы массивов, которые вы знаете в JavaScript. Для чего они нужны?

Какие методы массивов существуют в JavaScript и какие функции они выполняют? Приведите примеры наиболее часто используемых методов, таких как `push`, `pop`, `shift`, `unshift`, `map`, `filter` и другие, и объясните их применение.
JavaScriptWeb

Junior, Trainee

Какие способы центрирования элементов по горизонтали и вертикали знаете?

Опишите различные методы центрирования элементов в CSS по горизонтали и вертикали, как они работают и в каких случаях их лучше использовать.
JavaScriptWebCSS

Junior, Trainee

Для чего нужен утилитарный тип Record в TypeScript?

Объясните, как работает утилитарный тип Record в TypeScript и в каких случаях его можно применять. Укажите, как он помогает создавать типы, которые отображают ключи на определенные значения.
TypeScript

Junior, Trainee

Как проверить, что переменная равна NaN в JavaScript?

Как в JavaScript можно определить, является ли переменная значением NaN (Not-a-Number)? Какие методы и функции можно использовать для проверки этого, и почему NaN требует особого подхода при проверке?
JavaScriptWeb

Junior, Trainee

Что такое модификатор доступа в TypeScript?

Объясните, что такое модификаторы доступа в TypeScript, как они используются и как влияют на доступ к свойствам и методам классов. В каких случаях следует применять модификаторы public, private и protected?
TypeScript

Junior, Trainee

Как можно проверить, что объект является экземпляром класса в JavaScript?

Объясните, как в JavaScript можно проверить, что объект является экземпляром определенного класса. Какие существуют операторы и методы для такой проверки и как они работают?
JavaScriptWeb

Junior, Trainee

Что такое display: flex и как его использовать?

Объясните, что представляет собой CSS-свойство display: flex, для чего оно используется и как оно помогает управлять расположением элементов внутри контейнера.
JavaScriptWebCSS

Junior, Trainee

Как строку (string) превратить в число (number) в JavaScript?

Опишите, какие существуют способы в JavaScript для преобразования строки (string) в число (number). В каких случаях применять разные подходы и какие особенности нужно учитывать при конвертации данных?
JavaScriptWeb

Junior, Trainee

Что такое явное и неявное приведение типов в JavaScript?

Опишите, что такое явное и неявное приведение типов в JavaScript и как они работают. Приведите примеры ситуаций, когда происходят такие преобразования, и какие могут быть последствия.
JavaScriptWeb

Junior, Trainee

Как можно пройтись по всем полям объекта в JavaScript?

Опишите, какие существуют способы перебора всех полей объекта в JavaScript. Как с помощью циклов и встроенных методов можно получить доступ к каждому ключу и значению объекта?
JavaScriptWeb

Junior, Trainee

Что такое Promise в JavaScript?

Что представляет собой объект Promise в JavaScript и как он используется для обработки асинхронных операций? Опишите основные методы объекта Promise и как они помогают управлять результатами асинхронных задач.
JavaScriptWeb

Junior, Trainee

Что такое директива use strict и что она делает в JavaScript?

Объясните, что такое директива use strict в JavaScript, как она включается и как влияет на выполнение кода. В чем преимущества ее использования и как она помогает избегать ошибок?
JavaScriptWeb

Junior, Trainee

Что такое webpack и для чего он нужен?

Объясните, что такое webpack, как он используется в проектах на JavaScript и для чего необходим этот инструмент.
JavaScriptWeb

Junior, Trainee

Что такое медиазапросы в CSS?

Опишите, что такое медиазапросы в CSS, как они работают и как их можно использовать для создания адаптивных веб-страниц.
JavaScriptWebCSS

Junior, Trainee

Как остановить дефолтную (встроенную) обработку события в JavaScript?

Объясните, как можно предотвратить выполнение стандартного действия, которое связано с определенным событием в браузере, например, отправку формы при нажатии на кнопку.
JavaScriptWebHTML

Junior, Trainee

Что такое union (объединенные) типы в TypeScript?

Объясните, что такое union (объединенные) типы в TypeScript и как их использовать. В каких ситуациях они полезны и как их можно применить для типизации переменных, принимающих несколько типов значений?
TypeScript

Junior, Trainee

Какие есть встроенные типы в TypeScript?

Перечислите основные встроенные типы в TypeScript и объясните, для чего они используются. Укажите, как и когда их применяют в разработке.
TypeScript

Junior, Trainee

Для чего нужен оператор instanceof в JavaScript?

Объясните, как работает оператор instanceof в JavaScript, в каких случаях он используется и как позволяет проверить принадлежность объекта к определенному классу или типу. Какие ограничения существуют при его использовании?
JavaScriptWeb

Junior, Trainee

Для чего нужны сборщики и бандлеры в JavaScript?

Опишите, зачем нужны сборщики и бандлеры в проектах на JavaScript, какие задачи они решают и как помогают в разработке.
JavaScriptWeb

Junior, Trainee

В чем отличие между var, let и const при определении переменной?

Каковы ключевые различия между `var`, `let` и `const` при объявлении переменных в JavaScript? Опишите особенности области видимости, всплытия и возможности переопределения для каждого из этих ключевых слов.
JavaScriptWeb

Junior

Как можно достать из типа несколько полей в TypeScript?

Опишите, как можно получить только определенные поля из типа в TypeScript. Укажите, какие утилитарные типы используются для такой задачи и как они работают.
TypeScript

Junior

Что такое блочная модель CSS?

Опишите, что такое блочная модель в CSS и как она влияет на отображение элементов на веб-странице. Укажите, какие части составляют блочную модель и как они взаимодействуют между собой.
JavaScriptWebCSS

Junior

Что такое анонимная функция в JavaScript?

Что представляет собой анонимная функция в JavaScript и как она используется? Опишите, что отличает анонимные функции от именованных, и приведите примеры их применения в коде.
JavaScriptWeb

Junior

В чем отличие интерфейса от абстрактного класса в TypeScript?

Объясните, в чем заключается разница между интерфейсом и абстрактным классом в TypeScript. Укажите, когда и какой из них следует выбирать при проектировании кода.
TypeScript

Junior

Что такое CSS-препроцессоры и зачем они нужны?

Объясните, что такое CSS-препроцессоры, как они работают и в чем их преимущества при разработке стилей для веб-страниц.
JavaScriptWebCSS

Junior

Что означает ключевое слово this в JavaScript?

Каково назначение ключевого слова `this` в JavaScript и как оно определяется в различных контекстах? Объясните, как значение `this` меняется в зависимости от места вызова функции и от того, как функция была вызвана.
JavaScriptWeb

Junior

Как можно сделать все поля в типе необязательными в TypeScript?

Опишите, каким образом можно сделать все поля в типе необязательными в TypeScript. Укажите, какие утилитарные типы или другие подходы для этого можно использовать.
TypeScript

Junior

Что такое область видимости в JavaScript?

Что такое область видимости (scope) в JavaScript и как она влияет на доступность переменных в различных частях кода? Объясните различия между глобальной и локальной областью видимости, а также блочной видимостью.
JavaScriptWeb

Junior

Какие есть утилитарные типы в TypeScript?

Объясните, что такое утилитарные типы в TypeScript и приведите примеры наиболее часто используемых из них. Укажите, как они помогают при работе с типами.
TypeScript

Junior

Что такое стрелочная функция в JavaScript?

Какой синтаксис используется для определения стрелочных функций в JavaScript, и как они отличаются от обычных функций? Объясните, какие особенности стрелочных функций делают их удобными для использования в некоторых сценариях.
JavaScriptWeb

Junior

Что такое перегрузка функций/методов в TypeScript?

Объясните, как работает перегрузка функций и методов в TypeScript, и в каких случаях ее стоит использовать. Укажите, как правильно определить несколько сигнатур для одной функции.
TypeScript

Junior

Как проверить, является ли число конечным?

Каким образом в JavaScript можно определить, является ли значение числа конечным числом, а не бесконечным или NaN? Укажите методы и функции, которые позволяют проверить, что число не является ни бесконечностью, ни неопределенным числом.
JavaScriptWeb

Junior

Как можно сделать все поля в типе обязательными в TypeScript?

Объясните, как можно сделать все поля в типе обязательными, если изначально они являются необязательными. Укажите, какие утилитарные типы или другие подходы можно для этого использовать.
TypeScript

Junior

Что делает ключевое слово readonly в TypeScript?

Опишите, как работает ключевое слово readonly в TypeScript и как его можно использовать для ограничения изменения свойств объекта. Какие преимущества оно дает при работе с неизменяемыми объектами?
TypeScript

Junior

В чем отличие public, private и protected в TypeScript?

Опишите, чем отличаются модификаторы доступа public, private и protected в TypeScript, и как они влияют на доступ к свойствам и методам классов.
TypeScript

Junior

Какая разница между свойствами HTML-элементов innerHTML и innerText в JavaScript?

Объясните, в чем разница между свойствами innerHTML и innerText в JavaScript и как они используются для работы с содержимым HTML-элементов.
JavaScriptWebHTML

Junior

Для чего предназначены методы setTimeout и setInterval?

Каким образом в JavaScript можно планировать выполнение функций через определенные промежутки времени? Объясните назначение методов `setTimeout` и `setInterval`, как они работают и в каких случаях их лучше использовать.
JavaScriptWeb

Junior

Как можно типизировать this в TypeScript?

Объясните, как в TypeScript можно типизировать ключевое слово this. В каких ситуациях это необходимо и как правильно указывать тип для this в методах классов и функциях?
TypeScript

Junior

Как дождаться выполнения всех промисов в JavaScript?

Объясните, как в JavaScript можно дождаться завершения всех промисов, переданных в коллекцию. Укажите, какие методы и подходы можно использовать для работы с массивом промисов и получения результата после их выполнения.
JavaScriptWeb

Junior

Для чего нужен тип unknown в TypeScript?

Объясните, что такое тип unknown в TypeScript, в чем его преимущество перед типом any и когда его следует использовать при работе с данными.
TypeScript

Junior

Как остановить всплытие (bubbling) события в JavaScript?

Опишите, как можно предотвратить всплытие события в JavaScript, чтобы оно не поднималось по дереву DOM к родительским элементам.
JavaScriptWebHTML

Junior

Что такое мемоизация в JavaScript и как ее можно реализовать?

Объясните, что такое мемоизация и как она помогает оптимизировать работу JavaScript приложений. Приведите пример, как можно реализовать мемоизацию в коде и где она может применяться.
JavaScriptWeb

Junior

Что делает ключевое слово keyof в TypeScript?

Объясните, что делает ключевое слово keyof в TypeScript и как его можно использовать для работы с типами. В каких случаях оно применяется и как помогает при создании типов?
TypeScript

Junior

Как можно исключить из типа несколько полей в TypeScript?

Объясните, как можно исключить несколько полей из типа в TypeScript. Укажите, какие утилитарные типы используются для такой задачи и как они применяются.
TypeScript

Junior

Что делает ключевое слово typeof в TypeScript?

Объясните, как работает ключевое слово typeof в TypeScript, чем оно отличается от аналогичного оператора в JavaScript и в каких случаях его следует использовать при работе с типами.
TypeScript

Junior

Как можно скопировать объект в JavaScript?

Каким образом можно создать копию объекта в JavaScript? Объясните различные методы и подходы для поверхностного и глубокого копирования объектов, а также их плюсы и минусы.
JavaScriptWeb

Junior

Какие есть способы хранения данных в браузере?

Перечислите и опишите основные способы хранения данных на стороне клиента в веб-браузере. Укажите, какие технологии используются, какие у них особенности и как они применяются в различных сценариях.
JavaScriptWeb

Junior

Какой порядок выполнения тасок в EventLoop в JavaScript?

Объясните, как в JavaScript осуществляется порядок выполнения задач в EventLoop. Как задачи сортируются по приоритету и в каком порядке они выполняются в цикле событий?
JavaScriptWeb

Middle, Junior

Что такое веб-воркеры (WebWorkers) в JavaScript?

Опишите, что представляют собой веб-воркеры (WebWorkers) в JavaScript и как они работают. Укажите, для чего они используются, какие задачи решают и в каких случаях их стоит применять.
JavaScriptWeb

Middle, Junior

Как можно упростить написание кросс-браузерных стилей?

Расскажите, какие подходы и инструменты могут помочь в написании кросс-браузерных стилей в CSS и как обеспечить корректное отображение страниц в разных браузерах.
JavaScriptWebCSS

Middle, Junior

Что такое дженерики (generic types, <T>) в TypeScript?

Объясните, что такое дженерики в TypeScript, как они работают и в каких случаях их нужно использовать. Укажите, как дженерики помогают создавать гибкие и переиспользуемые функции и классы.
TypeScript

Middle, Junior

Чему равен this в обработчике событий в JavaScript?

Опишите, какое значение принимает this в контексте обработчика событий в JavaScript и как оно связано с элементом, на котором произошло событие.
JavaScriptWebHTML

Middle, Junior

Как можно сделать тип перечисления всех полей объекта в TypeScript?

Объясните, как в TypeScript можно создать тип, который представляет собой перечисление всех ключей объекта. Как это может помочь при создании динамических или обобщенных типов?
TypeScript

Middle, Junior

Что такое линтеры и для чего они нужны в JavaScript?

Расскажите, что такое линтеры и какую роль они играют в разработке на JavaScript. Объясните, как линтеры помогают поддерживать качество кода и какие ошибки они могут предотвращать.
JavaScriptWeb

Middle, Junior

setTimeout – это микро или макро таска (задача) в JavaScript?

Объясните, к какому типу задач относится setTimeout в JavaScript – микро или макротаски. Как оно влияет на порядок выполнения задач в EventLoop?
JavaScriptWeb

Middle, Junior

Что такое прогрессивный (progressive) рендеринг?

Объясните, что такое прогрессивный рендеринг в веб-разработке, как он работает и зачем он нужен. Укажите, какие методы и подходы используются для ускорения отображения контента на веб-страницах.
JavaScriptWeb

Middle, Junior

Что такое геттеры и сеттеры в JavaScript?

Объясните, что такое геттеры и сеттеры в JavaScript, как они работают и зачем нужны. Как их можно использовать для контроля доступа и изменения значений свойств объектов?
JavaScriptWeb

Middle, Junior

Что такое ссылочные типы, и как они работают в JavaScript?

Опишите, что такое ссылочные типы данных в JavaScript и как они отличаются от примитивных типов. Укажите, как работают ссылки на объекты и что происходит при изменении значения в одной из ссылок.
JavaScriptWeb

Middle, Junior

Опишите процесс всплытия (bubbling) событий в DOM.

Расскажите о механизме всплытия событий в DOM, как этот процесс работает и какие этапы включает.
JavaScriptWebHTML

Middle, Junior

Что такое mapped (сопоставленные) типы в TypeScript?

Объясните, что такое mapped (сопоставленные) типы в TypeScript и как они используются. В каких случаях они полезны для работы с объектами и как с их помощью можно изменять или адаптировать существующие типы?
TypeScript

Middle, Junior

Что такое утверждение типа (type assertion) в TypeScript?

Объясните, что такое утверждение типа (type assertion) в TypeScript, в каких случаях оно применяется и как его использовать правильно.
TypeScript

Middle, Junior

Как работает EventLoop в JavaScript?

Объясните, что такое EventLoop в JavaScript и как он управляет выполнением кода. Какие задачи он решает и как работает его механизм с очередями микрозадач и макрозадач?
JavaScriptWeb

Middle, Junior

Что такое макротаска (macrotask, макрозадача) в JavaScript?

Объясните, что такое макротаска в JavaScript и как она отличается от микротаски. Как и в каком порядке макротаски обрабатываются в EventLoop?
JavaScriptWeb

Middle, Junior

Что такое БЭМ (BEM) в CSS?

Расскажите, что такое методология БЭМ (BEM) в CSS, как она используется для организации кода и какие правила она предполагает для наименования классов.
JavaScriptWebCSS

Middle, Junior

Что такое hoisting в JavaScript, и как он работает?

Как концепция hoisting влияет на объявление переменных и функций в JavaScript? Объясните, что происходит при поднятии переменных и функций, и как это влияет на порядок выполнения кода.
JavaScriptWeb

Middle, Junior

Для чего нужен тип void в TypeScript?

Опишите, как и в каких ситуациях следует использовать тип void в TypeScript. Укажите, чем он отличается от других типов, и какую роль он играет при определении функций.
TypeScript

Middle, Junior

Для чего нужны .d.ts файлы в TypeScript?

Опишите, что такое файлы с расширением .d.ts в TypeScript, для чего они используются и как их создавать и подключать в проектах.
TypeScript

Middle, Junior

Для чего нужно ключевое слово declare в TypeScript?

Опишите, что делает ключевое слово declare в TypeScript и в каких случаях его нужно использовать. Укажите, как оно помогает при работе с глобальными переменными и библиотеками.
TypeScript

Middle, Junior

Как работает прототипное наследование в JavaScript?

Расскажите, как реализовано прототипное наследование в JavaScript. Укажите, как объекты могут наследовать свойства и методы других объектов через прототипы и какую роль играет цепочка прототипов.
JavaScriptWeb

Middle, Junior

Promise – это микро или макро таска (задача) в JavaScript?

Объясните, к какому типу задач относятся Promise в JavaScript – микро или макротаски. Как это влияет на порядок их выполнения в EventLoop?
JavaScriptWeb

Middle, Junior

В чем отличие Promise.all и Promise.allSettled в JavaScript?

Расскажите, в чем разница между методами Promise.all и Promise.allSettled в JavaScript. Укажите, как эти методы обрабатывают промисы и какие сценарии их использования существуют.
JavaScriptWeb

Middle, Junior

В чем отличие стрелочной функции от обычной в JavaScript?

Каковы ключевые различия между стрелочной функцией и обычной функцией в JavaScript? Обсудите особенности `this`, `arguments`, и поведение функций в контексте вызовов и методов.
JavaScriptWeb

Middle, Junior

Как можно убрать из массива все повторяющиеся элементы?

Объясните, какие подходы существуют в JavaScript для удаления всех повторяющихся элементов из массива. Как с помощью встроенных методов или других конструкций можно получить массив с уникальными значениями?
JavaScriptWeb

Middle, Junior

Что такое Babel и для чего он нужен?

Объясните, что представляет собой Babel и для каких целей используется в разработке JavaScript. Укажите, как Babel помогает работать с современным JavaScript кодом и какие преимущества дает использование этого инструмента.
JavaScriptWeb

Middle, Junior

В чем отличие extends от implements в TypeScript?

Опишите, в чем заключается разница между extends и implements в TypeScript. Укажите, как и в каких случаях их следует применять при работе с типами и классами.
TypeScript

Middle, Junior

Что такое каррирование (currying) в JavaScript?

Опишите, что такое каррирование (currying) в JavaScript и в каких случаях эта техника используется. Укажите, как каррирование преобразует функции и как это может быть полезно в разработке.
JavaScriptWeb

Middle, Junior

Чем отличаются any, unknown и never в TypeScript?

Объясните, в чем разница между типами any, unknown и never в TypeScript. Укажите, как и когда каждый из этих типов следует применять, и почему они важны для понимания системы типов TypeScript.
TypeScript

Middle, Junior

Что первее выведется – Promise или setTimeout в JavaScript?

Рассмотрите ситуацию, когда в коде JavaScript одновременно вызываются Promise и setTimeout. Объясните, какой из них выполнится первым и почему. Как EventLoop влияет на порядок их выполнения?
JavaScriptWeb

Middle, Junior

Что такое и для чего используют IIFE (Immediately Invoked Function Expression)?

Что представляет собой Immediately Invoked Function Expression (IIFE) в JavaScript и как его использование может помочь в управлении областью видимости? Объясните, как и почему IIFE используется для создания локального контекста и избегания загрязнения глобального пространства имен.
JavaScriptWeb

Middle, Junior

В чем отличие подключения скрипта через async и defer в HTML?

Опишите разницу между атрибутами async и defer при подключении скриптов в HTML и как они влияют на порядок выполнения кода и загрузку страницы.
JavaScriptWebHTML

Middle, Junior

Что такое микротаска (microtask, микрозадача) в JavaScript?

Расскажите, что такое микротаска в JavaScript, как она создается и в каком порядке выполняется по сравнению с другими задачами. Как микротаски связаны с EventLoop?
JavaScriptWeb

Middle, Junior

Что такое генератор и итератор в JavaScript?

Объясните, что представляют собой генераторы и итераторы в JavaScript, как они работают и в чем их отличия. Опишите основные особенности их использования и преимущества в сценариях работы с последовательностями данных.
JavaScriptWeb

Middle, Junior

Что такое замыкание (closure) в JavaScript?

Что такое замыкание в JavaScript и как оно работает? Объясните, как замыкания позволяют функции сохранять доступ к переменным своего внешнего контекста даже после завершения выполнения этой функции.
JavaScriptWeb

Middle, Junior

Что такое декораторы в TypeScript?

Опишите, что такое декораторы в TypeScript, как они работают и для чего применяются. Укажите, какие существуют виды декораторов и как они могут быть использованы на практике.
TypeScript

Middle, Junior

В чем отличие оператора in и метода hasOwnProperty в JavaScript?

Объясните, как работают оператор in и метод hasOwnProperty в JavaScript. Укажите, в чем их основное отличие и в каких случаях каждый из них лучше использовать.
JavaScriptWeb

Middle, Junior

Как сделать поля объекта неизменяемыми в JavaScript?

Объясните, какие способы существуют в JavaScript, чтобы сделать поля объекта неизменяемыми. Укажите, как можно предотвратить изменения в свойствах и добавление новых свойств в объект.
JavaScriptWeb

Middle, Junior

Для чего нужен тип never в TypeScript?

Объясните, что представляет собой тип never в TypeScript, как и когда он используется. Укажите, чем он отличается от других типов и в каких случаях его следует применять.
TypeScript

Middle, Junior

Что делает Promise.resolve() в JavaScript?

Объясните, как работает метод Promise.resolve() в JavaScript и для чего он используется. Как он влияет на выполнение цепочек Promise и их порядок в EventLoop?
JavaScriptWeb

Middle, Junior

Зачем нужны префиксы для некоторых CSS-свойств (-webkit-, -moz-)?

Объясните, для чего используются префиксы, такие как -webkit- и -moz-, перед некоторыми CSS-свойствами и как это связано с поддержкой браузерами.
JavaScriptWebCSS

Middle, Junior

Какая разница между определением функции через function и через var/let/const?

Каковы основные различия между определением функции с помощью ключевого слова `function` и использованием `var`, `let`, или `const` для объявления функции в JavaScript? Объясните, как область видимости и всплытие (hoisting) влияют на каждое из этих определений и какие особенности следует учитывать.
JavaScriptWeb

Middle, Junior

В чем отличие оператора ?? от || в JavaScript?

Объясните, в чем заключается разница между оператором нулевого слияния (??) и оператором логического ИЛИ (||) в JavaScript. В каких ситуациях следует использовать один оператор вместо другого?
JavaScriptWeb

Middle

Что такое дескрипторы свойств объектов в JavaScript?

Расскажите, что такое дескрипторы свойств в JavaScript и как они работают. Укажите, как с помощью дескрипторов можно управлять поведением свойств объектов, таких как их изменяемость и видимость.
JavaScriptWeb

Middle

Как можно отслеживать изменение конкретного поля в объекте в JavaScript?

Опишите, какие подходы существуют в JavaScript для отслеживания изменений конкретных полей в объекте. Укажите, как можно реализовать такую функциональность и какие методы или технологии для этого применяются.
JavaScriptWeb

Middle

В чем отличие функций bind, call, apply в JavaScript?

Каковы отличия между методами `bind`, `call`, и `apply` в JavaScript? Опишите, как каждый из этих методов используется для управления значением `this` в функции и какие параметры они принимают.
JavaScriptWeb

Middle

Как узнать высоту или ширину элемента в JavaScript?

Расскажите, какими методами и свойствами можно воспользоваться в JavaScript для получения текущих размеров элемента, таких как его высота и ширина.
JavaScriptWebHTML

Middle

Как узнать координаты элемента в JavaScript?

Объясните, как в JavaScript можно определить координаты элемента относительно окна или документа, и какие методы и свойства для этого подходят.
JavaScriptWebHTML

Middle

Что такое Symbol в JavaScript?

Объясните, что такое Symbol в JavaScript и как этот примитивный тип данных используется для создания уникальных идентификаторов. Какие преимущества предоставляет Symbol по сравнению с другими типами данных в JavaScript?
JavaScriptWeb

Middle

В чем отличие type от interface в TypeScript?

Объясните, в чем разница между type и interface в TypeScript. Укажите, какие задачи лучше решать с помощью каждого из них, а также как они могут использоваться вместе.
TypeScript

Middle

Для чего нужны коллекции Map и Set в JavaScript?

Как в JavaScript используются коллекции `Map` и `Set`? Объясните, в чем их основные особенности и отличия от обычных объектов и массивов, и какие преимущества они предоставляют для хранения уникальных значений и пар ключ-значение.
JavaScriptWeb

Middle

Зачем нужен утилитарный тип Awaited в TypeScript?

Объясните, что делает утилитарный тип Awaited в TypeScript и для чего он может быть полезен. Укажите, как его применять для работы с промисами и асинхронными типами.
TypeScript

Middle

Как работает boxing и unboxing в JavaScript?

Объясните, что такое boxing и unboxing в JavaScript и как они работают. Укажите, как примитивные типы преобразуются в объекты и обратно, и в каких случаях это происходит.
JavaScriptWeb

Senior, Middle

Что означает глубокая (deep) и поверхностная (shallow) копия объекта?

Какие различия между глубокой и поверхностной копией объекта в JavaScript? Опишите, как каждая из этих копий влияет на изменения в исходных и скопированных объектах, и какие подходы используются для создания каждой из копий.
JavaScriptWeb

Senior, Middle

Как реализован и работает enum в TypeScript после компиляции?

Объясните, как работает и выглядит enum в TypeScript после компиляции в JavaScript. Укажите, какие особенности и нюансы следует учитывать при его использовании.
TypeScript

Senior, Middle

Что такое Shadow DOM в JavaScript?

Расскажите, что такое Shadow DOM и как он работает в JavaScript. Объясните, как Shadow DOM помогает инкапсулировать стили и разметку и где его использование наиболее полезно.
JavaScriptWebHTML

Senior, Middle

Что такое temporal dead zone в JavaScript?

Объясните, что означает термин 'temporal dead zone' (временная мертвая зона) в JavaScript. Укажите, как она связана с переменными, объявленными через let и const, и как это влияет на выполнение кода.
JavaScriptWeb

Senior, Middle

Для чего нужны WeakMap и WeakSet в JavaScript?

Опишите, что такое WeakMap и WeakSet в JavaScript, и в чем их отличия от обычных Map и Set. Укажите, какие особенности этих структур данных позволяют им быть полезными в определенных сценариях.
JavaScriptWeb

Senior, Middle

Что такое коллстэк (callstack) и как он работает в JavaScript?

Объясните, что такое коллстэк (callstack) в JavaScript и как он управляет выполнением функций. Как происходит обработка функций в стеке и что происходит при возникновении ошибок?
JavaScriptWeb

Senior, Middle

Что такое веб-компоненты (WebComponents, custom elements) в JavaScript?

Объясните, что представляет собой технология WebComponents в JavaScript. Укажите, из каких основных компонентов состоит данная технология и как она используется для создания переиспользуемых и инкапсулированных элементов в веб-приложениях.
JavaScriptWebHTML

Senior, Middle

Почему typeof null возвращает object?

Объясните, почему выражение typeof null возвращает значение 'object' в JavaScript. Укажите, как это связано с историческими особенностями языка и к чему это может привести при написании кода.
JavaScriptWeb

Senior, Middle

Что такое Triple Slash директивы в TypeScript?

Объясните, что представляют собой Triple Slash директивы (///) в TypeScript, какие из них используются, и для чего они применяются при написании кода.
TypeScript

Senior, Middle

Перечисли типы воркеров, которые ты знаешь в JavaScript.

Какие типы воркеров существуют в JavaScript и для чего они используются? Какие задачи решают эти воркеры и в каких ситуациях их применение наиболее оправдано?
JavaScriptWeb

Senior, Middle

Какой максимальный размер LocalStorage в JavaScript?

Опишите, какой объем данных можно хранить в LocalStorage и какие ограничения существуют при работе с этим механизмом в браузерах.
JavaScriptWeb

Senior, Middle

Какие WebAPI доступны, а какие - нет, внутри воркеров в JavaScript?

Объясните, какие WebAPI доступны внутри воркеров в JavaScript и какие ограничения существуют при их использовании. Почему некоторые API недоступны в воркерах и какие задачи можно решить, используя доступные API?
JavaScriptWeb

Senior, Middle

Для чего нужно ключевое слово satisfies в TypeScript?

Опишите, как работает ключевое слово satisfies в TypeScript и для чего его можно использовать. Укажите, какие задачи оно решает и как помогает при работе с типами.
TypeScript

Senior, Middle

Какие этапы отрисовки страницы есть в браузере?

Опишите основные этапы отрисовки страницы в браузере. Как браузер обрабатывает HTML, CSS и JavaScript, чтобы превратить их в визуальное представление страницы?
JavaScriptWebHTMLCSS

Senior, Middle

Что такое reflow и repaint при отрисовке в браузере?

Объясните, что такое процессы reflow и repaint в браузере. Как изменения в DOM или CSS влияют на эти процессы и в каких ситуациях они могут быть вызваны?
JavaScriptWebHTMLCSS

Senior, Middle

Как можно отслеживать изменения localStorage в JavaScript?

Опишите, как можно отслеживать изменения данных в localStorage в JavaScript. Какие события и методы позволяют реагировать на изменения и как это используется в современных веб-приложениях?
JavaScriptWeb

Senior, Middle

Чем отличается поведение isNaN() и Number.isNaN()?

В чем заключается разница между функцией `isNaN()` и методом `Number.isNaN()` в JavaScript? Опишите, как каждая из этих функций обрабатывает значения, и как это влияет на проверку NaN.
JavaScriptWeb

Senior, Middle

Что такое garbage collector в JavaScript, и что он делает?

Объясните, что представляет собой garbage collector в JavaScript и какие задачи он выполняет. Укажите, как он работает и какую роль играет в управлении памятью в JavaScript.
JavaScriptWeb

Senior