Oba mohou obsahovat jakoukoli hodnotu, ale liší se v bezpečnosti. any vypíná kontrolu typů; unknown ji zachovává a nutí vás zúžit typ před použitím.
ts
: = ;
a..;
();
: = ;
u.();
();
Oba mohou obsahovat jakoukoli hodnotu, ale liší se v bezpečnosti. any vypíná kontrolu typů; unknown ji zachovává a nutí vás zúžit typ před použitím.
: = ;
a..;
();
: = ;
u.();
();
Knihovna IT otázek k pohovoru s podrobnými odpověďmi — od Junior po Senior.
Přispětfunction handle(input: unknown) {
if (typeof input === "string") {
input.toUpperCase(); // ✅ inside the guard, TS knows it's a string
}
}
unknown je typově bezpečný protějšek any: můžete mu přiřadit cokoli, ale nemůžete s ním dělat nic, dokud si neověříte, co to je pomocí type guard.
unknown — pro hodnoty skutečně neznámého typu na hranici: výsledky JSON.parse, API odpovědi, catch (e: unknown). Vynutí ověření.any — únikový ventil při migraci JS nebo když něco opravdu nemůžete typovat. Používejte opatrně; šíří se tiše a vypíná bezpečnost.Sáhnutí si na any zmařuje účel TypeScriptu.
Upřednostňujte unknown na netypizovaných hranicích — zachovává záruky kompilátoru a zároveň přijímá libovolný vstup, což vás tlačí k ověření dat předtím, než jim věříte.