V kodo bazo JavaScript platforme Node.js je dodana sprememba, ki omogoča izvajanje datotek s kodo v programskem jeziku TypeScript. Podpora jeziku TypeScript se vklopi z uporabo možnosti „—experimental-strip-types“ in se nanaša na čiščenje definicij tipov specifičnih za ta jezik, to je pretvorbo pred izvajanjem izvorne kode v JavaScript. Zmožnosti TypeScript, ki niso povezane z opisom tipov, kot so imenska prostora, dekoratorji, lastnosti parametrov in naštevanje (enum), za zdaj še niso podprte. Novo funkcionalnost lahko preizkusite z današnjimi nočnimi gradnjami Node.js 23.
Za prevod je uporabljen prevajalnik SWC (Speedy Web Compiler), napisan v jeziku Rust. Da se ne dodajajo dodatne odvisnosti k Node.js, je uporabljen vmesnik prevajalnika swc/wasm-typescript, dostavljen v vmesni kodi WebAssembly in že uporabljen za iste namene na platformi Deno. Sprememba je bila dodana kot odgovor na številne prošnje uporabnikov po tem, da bi omogočili izvajanje kode v TypeScriptu brez namestitve zunanjih nalagalnikov in dodatnih odvisnosti. Na konkurenčnih platformah Deno in Bun je podpora za TypeScript bila implementirana od začetka.
Ključna razlika med TypeScriptom in JavaScriptom je izrecna določitev tipov. Statična tipizacija omogoča izogibanje mnogim napakam med razvojem, omogoča uporabo dodatnih optimizacijskih tehnik, poenostavi odpravljanje napak in naredi kodo bolj berljivo ter enostavnejšo za nadaljnje delo in podporo s strani drugih razvijalcev. V dodani implementaciji v Node.js te možnosti TypeScript izginejo, saj se med prevajanjem izvornih besedil v JavaScript preverjanje tipov ne izvaja.
Izvor: opennet.ru
