TypeScript: вопросы на собеседовании
Вопросы и ответы по TypeScript: подготовка, примеры и типичные ошибки.
Проверьте себя по TypeScript: 5 вопросов, ~10 минут
Вопросов: 41. Частые идут первыми, сложные возвращаются на повторение.
- В чём разница между
any,unknownиnever?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost - Что такое discriminated union? Приведите реальный пример.Middle· спрашивают почти всегда
- В чём разница между
interfaceи псевдонимом типа (type) в TypeScript?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost - Что такое TypeScript и какие основные преимущества он даёт по сравнению с обычным JavaScript?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Для каких задач TypeScript является сильным выбором, а где лучше честно выбрать другой язык?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое generics в TypeScript и зачем они нужны? Приведите пример.Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое
as constи когда его стоит применять?Junior· полный разбор — Jobs/Boost - Что такое conditional types? Приведите пример с
extendsиinfer.Senior· полный разбор — Jobs/Boost - Что такое
keyofи как он используется?Middle· полный разбор — Jobs/Boost - Что такое mapped types и как создать пользовательский mapped type?Middle
- Как работает разрешение модулей (module resolution) в TypeScript?Senior· полный разбор — Jobs/Boost
- Что такое оператор
satisfies(представленный в TypeScript 4.9)?Middle· полный разбор — Jobs/Boost - Как TypeScript обрабатывает
nullиundefined? Что такое strict null checking?Junior - В чём разница между структурной типизацией (structural typing) и номинальной типизацией (nominal typing)?Middle· полный разбор — Jobs/Boost
- Как настраивается
tsconfig.json? Какие параметры компилятора наиболее важны?Senior - Что такое type guard'ы? Приведите примеры с
typeof,instanceofи пользовательскими type guard'ами.Middle· полный разбор — Jobs/Boost - Как сравнить TypeScript с ближайшими альтернативами по производительности, поддерживаемости, найму и экосистеме?Middle
- Как понять, что команда использует TypeScript идиоматично, а не переносит привычки из другого языка?Senior
- Представьте, сервис на TypeScript стал медленнее или нестабильнее после релиза. Какие language/runtime-specific причины вы проверите?Senior· полный разбор — Jobs/Boost
- Какие ошибки делают разработчики, переходящие на TypeScript с другого языка или стека?Middle· полный разбор — Jobs/Boost
- Какие особенности runtime, type system или memory model TypeScript реально влияют на архитектуру приложения?Middle· полный разбор — Jobs/Boost
- Какие production-риски чаще всего возникают в проектах на TypeScript: производительность, зависимости, конкурентность, деплой или observability?Senior· полный разбор — Jobs/Boost
- Что такое вариантность (variance) в TypeScript? Как ковариантность и контравариантность применяются к типам функций?Senior· полный разбор — Jobs/Boost
- Объясните union-типы и intersection-типы. Когда использовать каждый?Junior
- Что такое утилитные типы
Partial<T>,Required<T>,Readonly<T>иPick<T, K>?Junior· полный разбор — Jobs/Boost - Что такое
abstract-классы в TypeScript и чем они отличаются от интерфейсов?Middle - Что такое утилитный тип
Awaited<T>?Middle - Что такое
inferи как он работает внутри conditional types?Senior· полный разбор — Jobs/Boost - В чём разница между расширением одного
interfaceдругим и использованием intersection types?Middle - Что такое
NoInfer<T>(TypeScript 5.4) и какую проблему он решает?Senior· полный разбор — Jobs/Boost - Как типизировать React-компонент в TypeScript? Какие подводные камни у
React.FC?Middle· полный разбор — Jobs/Boost - Как сделать тип рекурсивным в TypeScript? Приведите пример.Senior
- Что такое
ReturnType<T>,Parameters<T>иInstanceType<T>?Junior· полный разбор — Jobs/Boost - Что такое template literal types и для чего они могут использоваться?Middle· полный разбор — Jobs/Boost
- Расскажите о случае, когда особенности TypeScript повлияли на архитектурное решение, производительность или сопровождение проекта.Middle
- Что дают
noUncheckedIndexedAccess,exactOptionalPropertyTypesи strict-режим вtsconfig?Middle - Почему TypeScript не заменяет runtime validation на границе API? Как сочетать типы с Zod, Valibot или io-ts?Middle· полный разбор — Jobs/Boost
- Какие версии, возможности или изменения экосистемы TypeScript важно учитывать на собеседованиях в 2026 году?Middle· полный разбор — Jobs/Boost
- Что такое declaration merging и когда это полезно?Middle· полный разбор — Jobs/Boost
- Что такое декораторы (decorators) в TypeScript и как они используются?Senior
- Что такое
namespaceв TypeScript и когда его следует избегать?Middle· полный разбор — Jobs/Boost