TypeScript · Junior · Frage 29 von 75
Wie grenzt man string | number in einer Bedingung auf string ein?
- 1
if (typeof value === 'string') { ... } - 2
if (value instanceof String) { ... } - 3
if (value is string) { ... }
Antwort zeigen
Richtige Antwort: if (typeof value === 'string') { ... }
Erklärung
TypeScript analysiert den Kontrollfluss: Nach einer typeof-Prüfung ist der Typ im Zweig auf string eingegrenzt, im else auf number. instanceof String prüft auf ein Wrapper-Objekt, nicht auf einen Primitivwert. Die Syntax x is T steht in der Signatur von Type-Guard-Funktionen.