TypeScript · Middle · Pytanie 19 z 75

Czym jest funkcja asercji (assertion function)?

function assertIsString(x: unknown): asserts x is string {
  if (typeof x !== 'string') throw new Error('Not a string');
}

Wyjaśnienie

Po assertIsString(value) value jest string w dalszym kodzie, bez if. Jeśli sprawdzenie się nie powiedzie, funkcja rzuca błąd. W przeciwieństwie do type guard (x is T) nie trzeba opakowywać wyniku w warunek.

Do poczytania

Błąd w pytaniu

TypeScript · Middle · pytanie 19

Sprawdź się

Rozwiąż test TypeScript · Middle: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test