TypeScript 5.5+: izolowane deklaracje i dalsze zmiany
Poznaj isolatedDeclarations i najnowsze usprawnienia wydajności.
TypeScript 5.5+: izolowane deklaracje i dalsze zmiany to bezpłatna lekcja TypeScript Academy na CoddyKit. To lekcja 4 z 4. 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 4 lekcji w sumie.
Przegląd TypeScript 5.5
TypeScript 5.5 (z czerwca 2024 roku) wprowadził automatycznie wnioskowane predykaty typów, obsługę izolowanych deklaracji, sprawdzanie składni wyrażeń regularnych oraz znaczące ulepszenia wydajności edytora.
// npm install typescript@5.5Automatycznie wnioskowane predykaty typów
TS 5.5 potrafi teraz automatycznie wywnioskować predykaty typu is z treści funkcji zawężających parametr, bez konieczności dodawania jawnej adnotacji.
// Before 5.5: had to annotate manually
function isString(val: unknown): val is string {
return typeof val === "string";
}
// After 5.5: TypeScript infers the predicate automatically
function isString(val: unknown) {
return typeof val === "string";
}
// Inferred: (val: unknown) => val is stringisolatedDeclarations: true
TS 5.5 dodał oficjalną obsługę isolatedDeclarations, która wymaga jawnych typów zwracanych przy eksportowanych elementach, aby umożliwić równoległe generowanie deklaracji dla poszczególnych plików.
{
"compilerOptions": {
"isolatedDeclarations": true
}
}
// Exported functions without return types now cause an errorSprawdzanie składni wyrażeń regularnych
TS 5.5 zgłasza błędy składni w literałach wyrażeń regularnych, wykrywając typowe pomyłki w wyrażeniach regularnych już podczas kompilacji.
const re = /(?<name>\w+)/; // OK — named capture group
const bad = /[z-a]/; // Error: invalid character class rangeZawężanie przepływu sterowania dla stałych indeksów
TS 5.5 ulepszył zawężanie typów przy dostępie do stałych właściwości obiektów i indeksów tablic.
const obj = { x: Math.random() > 0.5 ? "a" : "b" };
if (obj.x === "a") {
// TS 5.5: obj.x is narrowed to "a" here
console.log(obj.x.toUpperCase());
}TypeScript 5.6 i nowsze wersje
TypeScript nadal wydaje nowe wersje co kwartał, wprowadzając stopniowe ulepszenia wnioskowania typów, wydajności i funkcji języka zgodnych z propozycjami ECMAScript.
# Quarterly release cadence:
# 5.5: June 2024
# 5.6: September 2024
# 5.7: December 2024
# 5.8: March 2025Śledzenie planu rozwoju TypeScript
Zespół TypeScript publikuje na GitHubie plan prac dla każdej wersji. Śledzenie tego planu pomaga przewidywać nadchodzące funkcje.
# TypeScript iteration plans:
# github.com/microsoft/TypeScript/issues?q=Iteration+PlanZgodność z ECMAScript
TypeScript śledzi propozycje ECMAScript. Propozycje na etapie 3, takie jak dekoratory, using i Object.groupBy, zazwyczaj trafiają do TypeScriptu wkrótce po osiągnięciu etapu 3.
# TC39 proposals: https://tc39.es/proposals/
# Stage 3 = TypeScript eligible for inclusionBezpieczne aktualizowanie TypeScript
Podczas aktualizowania wersji TypeScript należy uruchomić tsc --noEmit i sprawdzić dziennik zmian TypeScript pod kątem zmian powodujących niezgodność, zanim zatwierdzi się aktualizację wersji.
npm install typescript@latest
npx tsc --noEmit
# Review: https://www.typescriptlang.org/docs/handbook/release-notes/overview.htmlNadążanie za @typescript/nightly
Należy używać nocnej kompilacji TypeScript do testowania nadchodzących funkcji lub zgłaszania błędów przed oficjalnymi wydaniami.
npm install typescript@next
# Use nightly in a separate branch or experimental projectZasoby społeczności
Aktualne informacje o TypeScript można czerpać z oficjalnych wydań, bloga TypeScript, Total TypeScript Matta Pococka oraz społeczności TypeScript na Discordzie.
# Resources:
# typescriptlang.org/docs
# devblogs.microsoft.com/typescript
# totaltypescript.com
# discord.gg/typescriptPodsumowanie: TypeScript 5.5+
TypeScript 5.5 wprowadził automatycznie wnioskowane predykaty typów, oficjalną obsługę isolatedDeclarations, sprawdzanie składni wyrażeń regularnych oraz ulepszone zawężanie. TypeScript jest wydawany co kwartał — należy śledzić plan rozwoju i bezpiecznie aktualizować wersję, wykonując testy z --noEmit.
Szybkie sprawdzenie
Co TypeScript 5.5 robi z funkcjami predykatów typów?
Czego się Państwo nauczyli
TypeScript 5.5+ oferuje automatycznie wnioskowane predykaty typów, isolatedDeclarations na potrzeby równoległych narzędzi, sprawdzanie składni wyrażeń regularnych oraz ulepszone zawężanie przepływu sterowania. Aby być na bieżąco, należy śledzić kwartalny plan rozwoju, aktualizować wersję po sprawdzeniu za pomocą --noEmit i angażować się w społeczność TypeScript.
Często zadawane pytania
Czy lekcja „TypeScript 5.5+: izolowane deklaracje i dalsze zmiany” jest bezpłatna?
Tak — pełny tekst „TypeScript 5.5+: izolowane deklaracje i dalsze zmiany” 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 4 lekcji w sumie.
Co nauczysz się w „TypeScript 5.5+: izolowane deklaracje i dalsze zmiany”?
Poznaj isolatedDeclarations i najnowsze usprawnienia wydajności. Ć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 4 z 4.
Ile czasu zajmuje lekcja „TypeScript 5.5+: izolowane deklaracje i dalsze zmiany”?
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
- TypeScript 5.0: standard dekoratorów i parametry typów const
- TypeScript 5.1–5.2: ulepszone wnioskowanie
- TypeScript 5.3–5.4: nowe zawężanie i NoInfer
- TypeScript 5.5+: izolowane deklaracje i dalsze zmiany