Что произойдёт в уже скомпилированном приложении, если вместо ожидаемого числа передана строка?

Типы TypeScript после компиляции обычно не проверяются: строка останется строкой, а результат зависит от выполняемой операции JavaScript.

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

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

Типы TypeScript после компиляции обычно не проверяются: строка останется строкой, а результат зависит от выполняемой операции JavaScript.

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

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

Условие

Что произойдёт в уже скомпилированном приложении, если вместо ожидаемого числа передана строка?

Ответ

Типы TypeScript после компиляции обычно не проверяются: строка останется строкой, а результат зависит от выполняемой операции JavaScript.

Например, '2' + 1 даст '21', а умножение может выполнить числовое приведение; вызов несуществующего метода способен завершиться ошибкой. Аннотация number не превращает входные данные в число. На границах API используйте runtime-проверку и явное преобразование с обработкой недопустимых значений, а не только приведение типа через as.

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

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

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

Подробнее