Как стать автором
Обновить

Комментарии 24

Чтобы проверить значение переменной на соответствие NaN можно, воспользовавшись встроенным методом isNaN() или используя оператор тройного равенства ===

Вы уверены, что === сработает для сравнения с NaN?

Наверно, имелось в виду, что x===x вернёт false, если NaN

Именно!

const nan = NaN;

nan != nan // true
nan !== nan //true

Интересная подборка, но есть одно но. Что мы видим:

  1. Общие вопросы, которые тупо заучиваешь перед собеседованием. React разрабы прям сидят и call, apply, bind применяют с утра до вечера, или думают о том, как создать объект без прототипа. Ну и про GC прям самое насущное, куда без этого для формочек.

  2. Хорошие теоретические вопросы на понимание работы WEB-платформы. Специфичность CSS, critical rendering path и т.д. Чтобы внятно на них ответить, надо прилично покапаться в спеках. При всем уважении к ответам автора, но у меня ответ на то, как работает браузер от запроса до отображения, занял 6 часов обзорной лекции от OSI модели до Resource Timing API.

А где вопросы про опыт? Или вдруг опыт в таком ремесле как разработка стал не важен? Про то, какие frontend-разработчик применял WEB API, какие проблемы есть в используемых им либах, как он организует архитектуру взаимодействия между компонентами. Про новинки того же HTML или CSS, которые он пробовал в коде (привет всем, кто модалки в 2024 пилит дивами, а для стилей использует SASS/SCSS).

Делаю вывод о том, что найм за последние 5-7 лет нисколько не изменился. Наивно полагать, что предложенная схема позволит понять реальный опыт соискателя и его способность к закрытию именно ваших задачек.

Это не подборка, а ответ чатгпт на промт "у меня собеседование через 5 минут, накидай мне вопросов для вротендера" ))

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

8. В чем разница между == и ===?

В том, что == мне линтер подчеркнет и я заменю на === ?

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

Сам спрашиваю про три примера задач в текущем спринте на собесах со стороны соискателя и рассказываю о них со стороны нанимателя. Очень проясняет картину.

А в чем проблема с SASS/SCSS?

А зачем он сейчас?

Затем что та же вложенность в нативном не везде работает

Да и нативная вложенность не сильно нужна, сколько там проблем с синтаксисом было на стадии обсуждения. По мне, препроцессоры свое отжили, современным CSS можно без магии и дополнительных зависимостей решать все задачи. Сахарок, конечно, приятно, но сильно ли нужно?

А вопрос про типы данных это для джуна? А то на собесах на мидла нет нет да и попадаются додики которые спрашивают этот вопрос, нажуя? нет ответа..

а вдруг на позицию мидла пришел джун, мы же вас так проверяем)

а вдруг ты читал спеку и ответил, что в JS есть типы значений, а не переменных. и что при const a = 10, у а есть метод .toString()

Очень хорошая подборка вопросов. Спасибо автору! Не хватало такой шпаргалки для подготовки к собесу :)

Спасибо!

Ну вообще-то let и const тоже поднимаются (hoisted), только вот TDZ. Зачем Вы вводите людей в заблуждение?!

Технически, TDZ такого понятия в спеках EcmaScript нет. Как и hoisted. Есть Hoistable declaration, но это относится только к функциям и генераторам. Let и const относятся к lexical declaration и для их обработки перед стартом выполнения кода сначала проходит целая пачка проверок на стадии Static semantics, где как раз проверяется, нет ли дублирования декларирования внутри одного блока.

А хостинг/всплытие (так называемые) это всего лишь документированный алгоритм выполнения кода. Когда перед стартом собираются все объявленные идентификаторы для всех окружений и проверяется let/const на стадии Static semantics, var никак не проверяется, регулярные функции как раз типа всплывают, что значит, что их идентификаторы собраны до старта кода и они могут быть использованы до того, как они технически определены в коде

Из чего состоит HTTP запрос

А куда же делся URL? ни слова об этом.

Видимо туда же, куда TLS

null - это объектный тип данных

Не путайте, пожалуйста, js и java. В js typeof null - это общеизвестный баг в языке, оставленный для обратной совместимости. История :)

К дополнению к этим вопросам поделюсь своим репозиторием с вопросами, форкайте если что найдете, создавал и дополнял чисто для себя, чтобы перед собесами пробежаться. https://github.com/frozendrakkon/interview-questions/tree/main

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории