Что такое type guard?

Middle
199 просмотров
AFK Offer AI

Type guard — это функция с возвращаемым типом x is SomeType. Она проверяет значение в рантайме и сообщает TypeScript о результате. Например: function isString(x: unknown): x is string { return typeof x === "string"; }. После вызова if (isString(value)) TS знает что value — string. Полезно для сложных проверок, которые typeof и instanceof не покрывают — валидация API-ответов, проверка формы объекта. Проверка ложится на разработчика — TS доверяет type guard.

Следующий вопрос

Что такое declaration files (.d.ts)?