Microsoft、プログラミング言語「TypeScript 3.4」のリリース候補版(RC)を公開:ビルドを高速化
Microsoftは、オープンソースのプログラミング言語「TypeScript 3.4」のリリース候補版(RC)を公開した。ビルドの高速化や読み取り専用配列の強化などを施した。
Microsoftは2019年3月15日(米国時間)、オープンソースのプログラミング言語の最新版「TypeScript 3.4」のリリース候補版(RC)を公開した。正式版のリリースは2019年3月28日の予定。
TypeScriptは、静的型付けができる言語で、JavaScriptのスーパーセット。ECMAScript規格に従った最新のJavaScriptの機能を、古いWebブラウザやランタイムが扱えるようにコンパイルすることもできる。
TypeScript 3.4 RCは、NuGetを使うか、次のコマンドラインのように、npmを使ってインストールできる(リリース候補版であるため、「@rc」が必要)。
npm install -g typescript@rc
TypeScript 3.4は「Visual Studio 2017」(15.2以降)の他、「Visual Studio Code」と「Sublime Text」でも利用できる。
TypeScript 3.4の主な特徴は次の通り。
後続のビルドを高速化する--incrementalフラグ
「--incremental」という新しいフラグが導入された。このフラグを使うと、プロジェクトグラフに関する情報を保存するようにTypeScriptに指示できる。次に--incrementalのフラグ付きで呼び出すと、TypeScriptはその情報を使って、型チェックを行う最もコストの低い方法を選択する。
読み取り専用の配列とタプルのサポート強化
読み取り専用のReadonlyArray型の新しい構文が導入され、読み取り専用の配列型が使いやすくなった。新しい構文では、配列型の新しいreadonly修飾子を使用する。
function foo(arr: ReadonlyArray<string>) { arr.slice(); // okay arr.push("hello!"); // error! }
また、readonlyタプルが新たにサポートされた。任意のタプルにreadonlyキーワードを接頭辞として付けることで、readonlyタプルにできる。
function foo(pair: readonly [string, string]) { console.log(pair[0]); // okay pair[1] = "hello!"; // error }
リテラル表現のconstコンテキスト
リテラル値の新しいコンストラクトとしてconstアサーションが導入された。構文では、型名の代わりにconstを使用する型アサーションを使う。
// Type '10' let x = 10 as const; // Type 'readonly [10, 20]' let y = [10, 20] as const; // Type '{ readonly text: "hello" }' let z = { text: "hello" } as const;
globalThisの型チェック
グローバルスコープを指すグローバル変数であるECMAScriptの新しい「globalThis」がサポートされた。
// in a global file: let abc = 100; // Refers to 'abc' from above. globalThis.abc = 200;
名前付きパラメーターに対応したリファクタリング
名前付きパラメーターパターンを使用するよう既存関数を変換する新たなリファクタリングが実装された。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Microsoft、プログラミング言語「TypeScript 3.3」を公開
Microsoftは、オープンソースのプログラミング言語の最新版「TypeScript 3.3」を公開した。大規模な変更ではなく、共用型のメソッドの扱いなど、マイナーアップグレードだ。 - Microsoft、プログラミング言語「TypeScript 3.2」を公開
Microsoftは、オープンソースのプログラミング言語の最新版「TypeScript 3.2」を公開した。TypeScriptは、静的型付けができるJavaScriptのスーパーセット。 - TypeScriptの進化の道のりとバージョン2.0の新機能(型システム編)
2016年9月にTypeScript 2.0がリリースされた。本稿では、これまでのTypeScriptの進化の過程とバージョン2.0で導入された新機能を見てみよう。