Какой тип у элемента input в TypeScript, если вы получаете его через querySelector?

Для document.querySelector('input') TypeScript обычно выводит HTMLInputElement | null. Для произвольного CSS-селектора тип может быть Element | null.

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

Что ответить на собеседовании

Для document.querySelector('input') TypeScript обычно выводит HTMLInputElement | null. Для произвольного CSS-селектора тип может быть Element | null.

Подробный разбор

Ответ с пояснениями

Для document.querySelector('input') TypeScript обычно выводит HTMLInputElement | null. Для произвольного CSS-селектора тип может быть Element | null.

Нужно проверить результат перед доступом к value. Например: const element = document.querySelector('#email'); if (element instanceof HTMLInputElement) console.log(element.value);. Generic querySelector<HTMLInputElement> задаёт ожидаемый тип, но не проверяет фактический тег во время выполнения; non-null assertion также не предотвращает null.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее