Sobes.tech
Назад к вопросам
Middle
5

Что такое Type Guard в TypeScript?

Компании, где спрашивали
АО Пари Страховая компания

Ответ от нейросети

sobes.tech AI

Type Guard в TypeScript — это специальная функция или выражение, которое позволяет сузить тип переменной внутри условного блока кода. Type Guard помогает компилятору понять, что в определённом участке кода переменная имеет более конкретный тип, чем объявлено изначально.

Например, функция с возвращаемым значением param is SomeType является пользовательским Type Guard:

function isString(value: unknown): value is string {
  return typeof value === 'string';
}

function example(value: unknown) {
  if (isString(value)) {
    // Здесь TypeScript знает, что value — string
    console.log(value.toUpperCase());
  } else {
    // Здесь value не string
  }
}

Type Guards полезны для безопасной работы с переменными, тип которых может быть объединением нескольких типов (union types). Они повышают безопасность и удобство разработки, позволяя избежать ошибок типов во время выполнения.