Přejít k navigační liště

Zdroják » JavaScript » Přivítejte TypeScript 3.0

Přivítejte TypeScript 3.0

Články ‐ ‐ JavaScript ‐

Microsoft vydal novou verzi populárního transpileru TypeScript. Co vás v ní čeká?

Už je to 6 let

Bude tomu šest let, co se objevil další transpiler do JavaScriptu, TypeScript. Od začátku nepřehlédnutelný, protože od Microsoftu.

Borek Bernard tehdy popsal své první dojmy:

Microsoft představil nový jazyk, TypeScript, který je v podstatě transpilerem do JavaScriptu jako mnoho dalších, jen se mi tentokrát celý projekt zdá vzatý za správný konec. Nerad bych to zakřiknul, ale mám pocit, že TypeScript bude velký.

Za těch pár let se stal TypeScript poměrně populární. V anketě popularity StackOverflow se umístil v roce 2017 jako devátý, v roce 2018 jako dvanáctý jazyk. Popularita mu neklesá, spíš naopak. Jen StackOverflow změnil pravidla ankety, takže se do stejné kategorie dostaly v roce 2018 i další jazyky jako HTML, CSS nebo bash, které zamíchaly pořadím.

Oproti jiným transpilerům je pro TypeScript typické, že se jedná o nadstavbu JavaScriptu. Každý kód JavaScriptu je také platným kódem TypeScriptu (naopak to už neplatí).

V pondělí vyšla nová verze TypeScript 3.0. Pokud jste nedočkaví, můžete hned nainstalovat a vyzkoušet:

npm install -g typescript

Kontrolní tsc --version by mělo zahlásit Version 3.0.1.

Pokud chcete jako IDE použít VS Code, musíte zatím stáhnout insider verzi (noční buildy), než vyjde verze stabilní.

Co je nového (telegraficky)

  • reference na projekty (jeden TypeScript projekt může záviset na jiném TypeScript projektu, což můžete nastavit v tsconfig.json)
  • proměnný počet parametrů funkce se nyní snadno vyřeší pomocí tuple
  • tuple může obsahovat nepovinné elementy (souvisí s předchozím)
  • vylepšené chybové hlášky, viz animovaný obrázek
  • nový typ unknown označuje proměnnou, o jejímž obsahu/typu zatím nic nevíme a musíme napřed provést její prozkoumání; pokud s proměnnou začneme pracovat rovnou, kód se nepřeloží
  • podpora defaultProps v JSX
  • direktiva /// <reference lib="..." /> řeší problémy s polyfilly

Nekompatibilita

Změn, které můžou způsobit nekompatibilitu se starším kódem, není příliš. Jednak je nyní unknown rezervovaný datový typ, dále byly odstraněny metody a funkce, které již dříve byly označeny jako deprecated (konkrétně LanguageService#getSourceFile, TypeChecker#getSymbolDisplayBuilder, escapeIdentifier a unescapeIdentifier) a tři metody jsou nyní interní a nemůžete je tak již používat (konkrétně TypeChecker#getSuggestionForNonexistentProperty, TypeChecker#getSuggestionForNonexistentSymbol a TypeChecker#getSuggestionForNonexistentModule).

Co se chystá dál

Další vývoj je nastíněn v roadmapě, kde například najdete, že další verze 3.1 by měla vyjít ještě v tomto srpnu a obsahovat podporu pro BigInt.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Rust pomohl vrátit JPEG XL do Chromu. Stačí to k úspěchu na webu?

Před čtyřmi lety Google podporu JPEG XL z Chromu odstranil. Teď formát vrací s dekodérem v Rustu, který vznikl na popud vývojářů Firefoxu. AVIF přitom může nabídnout menší soubory a bezeztrátový WebP rychlejší dekódování. JPEG XL má jiné přednosti: velkou fotografii dokáže zobrazovat už během stahování a staré JPEGy zmenší bez další ztráty kvality. Vedle historie jeho návratu se podíváme na výsledky srovnání, bezeztrátovou kompresi i praktické nasazení jednotlivých formátů na webu.

ISO, WIN, nebo MAC? Válka o kódování češtiny na webu

Kdo se webem zabýval na přelomu tisíciletí, zná ten pohled: stránka se načte a místo české věty se na ní objeví změť znaků jako ą, ľ a ». Nebyla to chyba monitoru ani písma. Byl to následek války, která se na českém internetu vedla po dlouhá léta. Šlo v ní o zdánlivou maličkost: jak do jednoho bajtu vměstnat písmeno „ř“. Podívejme se, kdo v ní proti komu stál, proč ji nešlo vyhrát a jak skončila.