Ответ
- Использования
any— лишает TypeScript всех преимуществ. Вместо этого используйтеunknownили уточняйте типы.
// Плохо
function log(value: any) { console.log(value); }
// Лучше
function log(value: unknown) {
if (typeof value === 'string') console.log(value);
}
-
Нестрогих проверок (
strict: false) — всегда включайтеstrictрежим для лучшей типобезопасности. -
Избыточных типов — TypeScript умеет выводить типы. Избегайте дублирования:
// Плохо
const name: string = 'Alice';
// Лучше
const name = 'Alice';
-
Необработанных
null/undefined— используйте опциональные поля (?) или проверки. -
Игнорирования ошибок типов (
@ts-ignore) — исправляйте проблемы, а не скрывайте их. -
Сложных типов без
interface/type— выносите сложные структуры в отдельные объявления для читаемости. -
asутверждений — они обходят проверку типов. Лучше использовать сужение типов. -
Глобальных модификаций (
declare global) — могут привести к неожиданным побочным эффектам.