Saadaval on TypeScript 6.0, viimane vÀljaanne JavaScripti kompilaatoriga.

Microsoft on avaldanud TypeScript 6.0 versiooni, veebirakenduste arendamiseks mÔeldud keele, mis laiendab JavaScripti vÔimalusi, ja selle seotud tööriistad. TypeScripti koodi kompilaator, mis tÔlgib TypeScripti koodi JavaScripti esitusvormi, on litsentseeritud Apache 2.0 alusel, arendus kÀib avalikus hoidlas GitHubi kaudu. Keelespetsifikatsioonid on avatud ja avaldatud Open Web Foundation Specification Agreement raames.

TypeScripti keel laiendab JavaScripti vĂ”imalusi, olles samas tĂ€ielikult tagurpidi ĂŒhilduv, mis lihtsustab olemasolevate rakenduste tĂ”lkimist TypeScripti. LĂ”pp-rakendus TypeScriptis kompileeritakse tavalisse JavaScripti, mida saab tĂ€iustada mistahes kaasaegses veebibrauseris vĂ”i kasutada platvormidega Node.js, Bun ja Deno. TypeScripti programmides on vĂ”imalik kasutada olemasolevaid JavaScripti teeke. TypeScript eristub JavaScriptist jĂ€rjepidevate tĂŒĂŒpide mÀÀratlemise ning tĂ€isklasside kasutamise toetamise poolest. Staatiline tĂŒpiseerimine aitab vĂ€ltida paljusid vigu arendusprotsessis, vĂ”imaldab rakendada tĂ€iendavaid optimeerimistehnikaid, lihtsustab silumist ning muudab koodi arusaadavamaks ja lihtsamaks edasise muutmise ja hooldamise osas.

TypeScript 6.0 haru mĂ€rgitud viimaseks, mida tarnitakse TypeScripti kompilaatoriga, mis tĂ”lgib JavaScripti. Haru TypeScript 7.0 korral liigub projekt uue kompilaatori, typescript-go (tsgo) juurde, mis arendatakse Go keeles alates 2024. aastast. Uus kompilaator suurendab oluliselt ehituse kiirus, vĂ€hendab mĂ€lutarbimist ja lĂŒhendab koodiredaktorite kĂ€ivitusaega, mis lahendab praegu tĂ€heldatud skaleeritavuse probleeme vĂ€ga suurtes projektides. Samuti antakse vĂ€lja kompaktne kĂ€surea tööriistakomplekt, mis vĂ”imaldab kiiresti koodi koostada selle toimivuse kontrollimiseks.

TypeScript 6.x haru jĂ€tkab vana kompilaatori tarnimist, kuid sisaldab eraldi muudatusi, et valmistuda ĂŒleminekuks uuele elluviimisele. TypeScript 6.0 kĂ€ivitamine tĂ”lgendatakse sillana TypeScript 5.9 ja 7.0 vahel, ning sisaldab muudatusi, mis on suunatud peamiselt tulevase ĂŒlemineku lihtsustamisele TypeScript 7.0 harule. Testimiseks on saadaval TypeScript 7.0 eelversioon, mis on avaldatud VSCode'i tĂ€ienduse ja NPM-paketi kujul. PĂ€rast TypeScript 7.0 vĂ€ljaandmist eksisteerivad harud 6.x ja 7.x paralleelselt ning neid toetatakse koos, kuni TypeScript 7.x haru jĂ”uab kĂŒpsesse seisundisse, olles valmis tĂ€ielikult asendama vana tööriistakomplekti.

TypeScript 6.0 muudatused:

  • Rakendatud on vĂ”imalus kasutada Node.js stiilis „#/“ prefikse paketi sees defineeritud moodulite aliasite importimiseks, selle asemel, et nĂ€idata suhtelisi teid. NĂ€iteks ‘import * as utils from „#root/utils.js“‘ selle asemel, et ‘import * as utils from „../../utils.js“.
  • Lisatud on lipp „—stableTypeOrdering“ TypeScript 7 harus rakendatud deterministliku tĂŒĂŒbi sorteerimise algoritmi aktiveerimiseks kompilaatoris, tagades tĂŒĂŒpide mÀÀratlemise sama jĂ€rjekorra igas keskkonnas. ReĆŸiimi soovitatakse kasutada ainult vĂ”imalike probleemide diagnoosimiseks enne ĂŒleminekut TypeScript 7 harule, kuna selle aktiveerimine TypeScript 6.0-s vĂ”ib aeglustada kompilaatorit 25%.
  • Rakendatud on sisseehitatud tĂŒĂŒbid API Temporal jaoks, mis pakub alternatiivseid meetodeid kuupĂ€evade ja aegade töötlemiseks, vĂ”imaldades kuupĂ€evi manipuleerida nii ajavööndite arvestamisega kui ka ilma, aega konverteerida, vĂ€ljundit vormindada ja ajaga tehteid teha.
  • Lisatud on tĂŒĂŒbid upsert-meetodite getOrInsert ja getOrInsertComputed jaoks Map ja WeakMap objektides, mis tagastavad juba olemasoleva vÀÀrtuse, mis on seotud antud vĂ”tmega, vĂ”i loovad uue kirje, kui vĂ”tme jaoks midagi ei leitud.
  • Lisatud on toetus funktsioonile RegExp.escape, mis escapeÂŽib erimĂ€rgistused stringides, et neid vĂ”iks ohutult kasutada regulaaravaldiste mallides, mis on mÀÀratletud RegExp() konstruktori kaudu.
  • Muutunud on vaike seadistused:
    • Parameeter rootDir mÀÀrab nĂŒĂŒd, et see viitab kĂ€esolevale kataloogile „.“, kus asub faili tsconfig.json konfiguratsioon, mitte tĂŒĂŒbipĂ”hisele kataloogile, kus on allikakood.
    • VĂ€li „types“ failis tsconfig.json mÀÀratletakse nĂŒĂŒd kui „[]“, mitte „[„*“]“, st TypeScript ei hĂ”lma enam vaikimisi kĂ”iki pakette „node_modules/@types“ ja nĂ”uab globaalsete pakettide selget mÀÀratlemist (nĂ€iteks [„node“, „jest“]). See muudatus vĂ€hendab kompileerimise aega 20-50%.
    • SihtvÀÀrtus hĂ”lmab nĂŒĂŒd praegust ECMAScripti versiooni (es2025). SihtvÀÀrtuses on vananenud versiooni es5 (ECMAScript 5) kĂ€sitletud minimaalse versioonina es6 (ECMAScript 2015).
    • Vaikimisi on range reĆŸiim aktiveeritud, et rangelt kontrollida tĂŒĂŒpe.
    • Parameeter module on vaikimisi seatud vÀÀrtusele „esnext“, mis hĂ”lmab JavaScripti moodulite (ESM) toetust import ja export direktiividega, selle asemel, et kasutada vananenud CommonJS formaati.
  • Komplektori jĂ”udluse parandamiseks on vananenud:
    • Valik „—baseUrl“.
    • Kasutada vĂ”tmesĂ”na module moodulite nimede mÀÀratlemiseks („module Foo { 
 }“ asemel „namespace Foo { 
 }“).
    • Valik „—outFile“ (kasutage vĂ€list pakendajat nagu esbuild, Rollup, ja Webpack);
    • ReĆŸiim „—moduleResolution: classic“ (soovitatav on kasutada nodenext vĂ”i bundler).

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster