Встречается на собеседованиях • сегодня

Какой синтаксис у Type Guard

Type Guard в TypeScript - это способ сужения типа переменной внутри блока кода. Основные синтаксисы:

  1. typeof для примитивов:
typescript
if (typeof value === 'string') {
  // value теперь string
}
  1. instanceof для классов:
typescript
if (error instanceof Error) {
  // error теперь тип Error
}
  1. Пользовательские type guards (функции с предикатом):
typescript
function isFish(pet: Fish | Bird): pet is Fish {
  return (pet as Fish).swim !== undefined;
}

if (isFish(pet)) {
  pet.swim(); // TypeScript знает, что pet - Fish
}
  1. Проверка свойств (in operator):
typescript
if ('swim' in animal) {
  // animal имеет свойство swim
}

Type Guards особенно полезны при работе с union типами, помогая TypeScript корректно определить тип в runtime.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы