Beide können jeden Wert enthalten, unterscheiden sich aber in Sicherheit. any schaltet die Typprüfung aus; unknown hält sie ein und zwingt dich, vor der Verwendung zu prüfen.
ts
: = ;
a..;
();
: = ;
u.();
();
Beide können jeden Wert enthalten, unterscheiden sich aber in Sicherheit. any schaltet die Typprüfung aus; unknown hält sie ein und zwingt dich, vor der Verwendung zu prüfen.
: = ;
a..;
();
: = ;
u.();
();
Eine Sammlung von IT-Interviewfragen mit ausführlichen Antworten — vom Junior bis zum Senior.
Spendenfunction handle(input: unknown) {
if (typeof input === "string") {
input.toUpperCase(); // ✅ inside the guard, TS knows it's a string
}
}
unknown ist das typsichere Gegenstück zu any: du kannst ihm alles zuweisen, aber du kannst damit nichts anfangen, bis du über eine type guard bewiesen hast, was es ist.
unknown — für Werte von wirklich unbekanntem Typ an der Grenze: JSON.parse Ergebnisse, API-Antworten, catch (e: unknown). Es erzwingt Validierung.any — Fluchtluke beim Migrieren von JS oder wenn du etwas wirklich nicht tippen kannst. Verwende es sparsam; es verbreitet sich lautlos und deaktiviert Sicherheit.Zu any zu greifen widerlegt den Zweck von TypeScript.
Bevorzuge unknown an untypisierten Grenzen — es bewahrt die Garantien des Compilers, akzeptiert aber immer noch beliebige Eingaben und drängt dich, Daten vor dem Vertrauen zu validieren.