0Pricing
TypeScript Academy · Lekcja

Inferencja typów i any a unknown

Zobaczą Państwo, jak TypeScript wnioskuje typy, poznają różnicę między any i unknown oraz dowiedzą się, jak const zmienia inferencję.

Inferencja typów i any a unknown to bezpłatna lekcja TypeScript Academy na CoddyKit. To lekcja 2 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej TypeScript Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs TypeScript Academy zawiera 3 lekcji w sumie.

Wprowadzenie

Cel: Dowiedzieć się, jak TS wnioskuje typy na podstawie wartości, oraz porównać any z unknown pod kątem bezpieczeństwa.

Wnioskowanie z let i const

Wnioskowanie: let wnioskuje szeroki typ (number). const wnioskuje typ literałowy ("TS").

let count = 5;       
 // inferred number
const title = "TS"; 
// inferred literal type "TS"
console.log(count, title);

as const

as const zachowuje typy literałowe, zamrażając wartości jako readonly. Jest to przydatne w przypadku wyliczeń i tablic konfiguracyjnych.

const colors = ["red", "green", "blue"] as const;

// type is readonly ["red","green","blue"]

console.log(colors);

Typ any

any wyłącza sprawdzanie typów. Zapewnia swobodę, ale usuwa bezpieczeństwo: błędy przechodzą kompilację i powodują awarie w czasie działania.

let flexible: any = 42;

lexible = "hello";

flexible.nonexistentMethod(); 

// no error at compile time!

Typ unknown

unknown wymusza sprawdzenie typu przed użyciem. Jest bezpieczniejszy niż any, ponieważ nie można bez sprawdzenia wywoływać metod.

let input: unknown = "hello";

// Must narrow before use

if (typeof input === "string") { 
    console.log(input.toUpperCase());
}

Kiedy używać

Wskazówka: W przypadku większości zmiennych należy preferować wnioskowanie. Jawnych adnotacji należy używać dla większej czytelności. Należy unikać any; gdy typ nie jest jeszcze znany, lepiej użyć unknown.

Sprawdzenie any i unknown

Szybkie sprawdzenie: Jaka jest główna różnica między any a unknown?

Podsumowanie

Podsumowanie: TS automatycznie wnioskuje typy. const zawęża je do literałów, a as const blokuje wartości. any wyłącza bezpieczeństwo, natomiast unknown wymusza sprawdzanie.

Często zadawane pytania

Czy lekcja „Inferencja typów i any a unknown” jest bezpłatna?

Tak — pełny tekst „Inferencja typów i any a unknown” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu TypeScript Academy, przejdź na CoddyKit PRO. Kurs TypeScript Academy zawiera 3 lekcji w sumie.

Co nauczysz się w „Inferencja typów i any a unknown”?

Zobaczą Państwo, jak TypeScript wnioskuje typy, poznają różnicę między any i unknown oraz dowiedzą się, jak const zmienia inferencję. Ćwiczysz TypeScript Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć TypeScript Academy?

Nie wymagamy żadnego doświadczenia. TypeScript Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 3.

Ile czasu zajmuje lekcja „Inferencja typów i any a unknown”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji TypeScript Academy?

Tak. Każda lekcja TypeScript Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Typy prymitywne i adnotacje
  2. Inferencja typów i any a unknown
  3. Typy unii i literałów (wprowadzenie do zawężania)
← Powrót do TypeScript Academy