TypeScript · Middle · Frage 1 von 75

Was ist ein benutzerdefinierter Type Guard?

function isUser(x: unknown): x is User {
  return typeof x === "object" && x !== null && "id" in x;
}
Antwort zeigen

Richtige Antwort: Eine Funktion mit dem Rückgabetyp x is T, die das Argument bei true eingrenzt

Erklärung

Nach if (isUser(data)) hat data im Zweig den Typ User. Für die Richtigkeit der Prüfung ist der Entwickler verantwortlich: Der Compiler vertraut dem Prädikat. Seit TS 5.5 werden einfache Prädikate automatisch abgeleitet, etwa für arr.filter(x => x !== null).

Zum Weiterlesen

Fehler in der Frage

TypeScript · Middle · Frage 1

Teste dich selbst

Mach den Test TypeScript · Middle: Fragen und Antworten werden gemischt, und am Ende wartet eine Übersicht der Fehler.

Diesen Test machen