A JavaScript nyelvhez javasolják a típuskészlet információval rendelkező szintaxis hozzáadását.

A Microsoft, az Igalia és a Bloomberg kezdeményezte, hogy a JavaScript specifikációjába kerüljön be egy szintaxis, amely a típusok explicit meghatározására szolgál, és hasonlít a TypeScript nyelvben alkalmazott szintaxisra. Jelenleg az ECMAScript szabványba való beépítésre javasolt változati prototípus előzetes megvitatásra került (0. szakasz). A közelgő márciusi TC39 bizottsági ülésen a javaslat első szakaszának megvitatására számítanak a szakmai közösség bevonásával az ECMA-ból.

A világosan megadott típusinformációk lehetővé teszik, hogy elkerüljük a fejlesztési folyamat során jelentkező sok hibát, további optimalizálási technikák alkalmazását segítik, egyszerűsítik a hibakeresést, valamint olvashatóbbá és könnyebben karbantarthatóvá teszik a kódot más fejlesztők számára. A típusok támogatását opciós lehetőségként javasolják megvalósítani – a típusellenőrzést nem támogató JavaScript motorok és futási környezetek figyelmen kívül hagyják a típusinformációkat tartalmazó annotációkat, és a kódot a korábbiak szerint dolgozzák fel, a típusok adatait megjegyzésként kezelve. Azonban a típusok ellenőrzésére szolgáló eszközök képesek lesznek az elérhető információk alapján felismerni a típusok helytelen használatával kapcsolatos hibákat.

Ellenben a típusinformációk a JSDoc annotációk formájában, megjegyzéseként történő megadása helyett, a típusok közvetlen megadásával a változók definíciós szerkezetében a kódot még áttekinthetőbbé, érthetőbbé és könnyebben szerkeszthetővé teszi. Például a TypeScript támogatásával rendelkező integrált fejlesztői környezetek azonnal ki tudják emelni a hibákat a tipizált JavaScript kódban további átalakítás nélkül. Ezen túl a beépített típus támogatás lehetővé teszi, hogy programokat írjanak tipizált JavaScript dialektusokban, mint például a TypeScript és a Flow, anélkül, hogy transzpilerre lenne szükség.

A JavaScript nyelvhez javasolják a típuskészlet információval rendelkező szintaxis hozzáadását.

Из типов предлагается добавить «string», «number» и «boolean», которые можно будет использовать при определении переменных, параметров функций, элементов объектов, полей классов, типизированных массивов («number[]»). Предлагается также обеспечить поддержку объединённых типов («string | number») и дженериков. let x: string; function add(a: number, b: number) { return a + b; } interface Person { name: string; age: number; } function foo<T>(x: T) { return x; } function foo(x: string | number): string | number { if (typeof x === number) { return x + 1 } else { return x + «!» } }

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster