Microsoft、「TypeScript 2.1」をリリース。sync/awaitのサポート強化などが行われる

 米MicrosoftのTypeScript開発チームは12月7日、「TypeScript 2.1」を公開した。ECMAScript 3/5の両環境で別途ライブラリやツールを導入することなしにasyncやawaitが利用できるようになるなど、ポイントリリースながら多数の機能が加わっている。

 TypeScriptは「拡張性のあるJavaScript」としてMicrosoftが開発するプログラミング言語。TypeScriptで書かれたコードはJavaScriptコードに変換でき、任意のWebブラウザやNode.js、ECMAScript 3をサポートするJavaScriptエンジンなどで実行できる。

 TypeScript 2.1は9月に公開されたTypeScript 2.0に続く最新安定版。新たに「downlevel async関数」が導入され、ほかのツールを使うことなしにECMAScript 3および5環境でasyncやawaitといった機能が利用できるようになった。これにあたってはtree transformsを使うようにemitパイプラインを書き直し、emitのスピードに影響がないようにしたという。

 また、ECMAScript 2017向けの新しい提案である「Object Rest/Spread」も導入した。部分的にオブジェクトのコピー、マージなどができるもので、オブジェクトのシャローコピーの作成や異なるオブジェクトのマージなどが容易にできるようになる。Reduxなどのライブラリですでに使われているという。

 動的に付けられたプロパティ向けの静的型として、keyof演算子(インデックス型クエリ)とインデックスアクセス型(lookup types)を導入した。また、Mapped Typesとして、リテラル型の集まりから新しいオブジェクト型のプロパティセットを生成する機能も加わった。既存の型のすべてのオプションバージョンを作成するpartialや、Readonly、Record、Pickといった新しい型も加わった。

 このほか、リテラル型向けの型推論の改善、外部ヘルプライブラリのサポートなど多数の機能が加わっている。

TypeScript
https://www.typescriptlang.org/