米Microsoft、「TypeScript 3.2」を公開

 米Microsoftは11月29日、JavaScriptを拡張したプログラミング言語「TypeScript 3.2」を発表した。

 TypeScriptはJavaScriptをベースに静的型チェックなどの機能を追加したもの。記述したコードはJavaScriptに変換して実行できる。Microsoftのオープンソースプロジェクトとして開発が進んでおり、ライセンスはApache License 2。

 TypeScript 3.2は7月に公開されたバージョン3系の2回目のポイントリリースとなる。thisのバインディングなどを可能にする関数メソッドであるbind、call、applyの型推論を強化し、その一部として「–strictBindCallApply」フラグを導入した。bindやcall、apply向けのシグネチャをより強固に宣言する新しいグローバル型「CallableFunction」を使って、呼び出しできるオブジェクトを記述できる手法となる。合わせて「NewableFunction」という仕組みも加わった。

 Genericsを使った型を扱うための「object spread type」という新しい型システムのコンセプトが導入された。BigIntoのサポートも導入され、BigInt型の型チェックが有効となった。TypeScriptでのBigIntサポートにあたっては、新しいプリミティブ型bigintが導入されており、bigint型の値はBigInt()関数の呼び出しにより得ることができる。

 型定義ファイルのlib.d.tsでは、DOM宣言生成関連の機能が入り、一部のパラメーターがnullを受け付けないなどの変更が加わった。これらは互換性がない変更となる。

 このほか、JavaScriptでのObject.defineProperty宣言をサポートしたほか、フォーマッタ、エラーメッセージなども改善した。

 TypeScriptのVisual Studio 2015プラグインや、Visual Studio 2017向けのSDKが提供されている。npmやNuGetといったパッケージ管理システム経由でも導入できる。

TypeScript
https://www.typescriptlang.org/