Microsoftはオープンソースのプログラミング言語の最新版「TypeScript 4.5」を公開した。「Awaited」型の導入など、多くの機能が追加、強化され、パフォーマンスも向上している。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2021年11月17日(米国時間)、オープンソースのプログラミング言語の最新版「TypeScript 4.5」を公開した。「Awaited」型の導入など、多くの新しい機能や改善があり、生産性やパフォーマンスも向上している。
TypeScriptは静的型付けができる言語であり、JavaScriptのスーパーセットだ。ECMA規格に従った最新のJavaScriptの機能を、古いWebブラウザやランタイムが扱えるようにコンパイルすることもできる。
NuGetを使うか、次のコマンドラインのように、npmを使ってTypeScript 4.5をインストールできる。
npm install typescript
TypeScript 4.5は「Visual Studio 2019」と「Visual Studio 2017」のエディタでサポートされており、「Visual Studio Code」(以下、VS Code)、「Sublime Text 3」でも利用できる。TypeScript 4.5の主な特徴は次の通り。
新しいユーティリティー型「Awaited」が導入された。Awaitedは、「async」関数の「await」や、「Promise」の「.then()」メソッド(Promiseを再帰的にアンラップする方法)のような操作のモデル化を目的としている。
// A = string type A = Awaited<Promise<string>>; // B = number type B = Awaited<Promise<Promise<number>>>; // C = boolean | number type C = Awaited<boolean | Promise<number>>;
加えて、「Promise.all」レバレッジが特定の機能とAwaitedを組み合わせ、より良い推論結果を提供するようになった。
特定のビルトインlibを、「@types/」サポートの仕組みと似た方法でオーバーライドする方法が導入された。どのlibファイルを含めるべきなのかを判断する際、TypeScriptはまず、「node_modules」のスコープされた「@typescript/lib-*」パッケージを探す。例えば、「dom」をlibのオプションとして含めるとき、TypeScriptは、「node_modules/@typescript/lib-dom」の型が使用可能な場合、それを使用する。
次に、パッケージマネジャーを使って、所定のlibに取って代わる特定のパッケージをインストールできる。例えば、TypeScriptは現在、@types/webでDOM APIのさまざまなバージョンを公開している。プロジェクトを特定のバージョンのDOM APIにロックしたい場合、次のコードを「package.json」に追加すればよい。
{ "dependencies": { "@typescript/lib-dom": "npm:@types/web" } }
TypeScript 4.5から、TypeScriptを更新すると、依存関係マネジャーのロックファイルが、同じバージョンのDOMタイプが使われることを保証するようになった。このため、タイプを自分のペースで更新できる。
テンプレート文字列型を持つ値を絞り込めるようになり、テンプレート文字列型を判別式として認識するようになった。
Copyright © ITmedia, Inc. All Rights Reserved.