結論
TypeScript 6.0 への移行は、公式の ts5to6 ツールを使えばほぼ自動で完了します。
npx ts5to6 --project tsconfig.json
どうしても時間がない場合は、tsconfig.json に応急処置を施せば今の設定をそのまま維持できます。
{
"compilerOptions": {
"ignoreDeprecations": "6.0"
}
}
ただしこれはあくまで一時的な逃げ道で、TypeScript 7.0 では完全に削除されます。余裕のあるうちに正しく移行しておきましょう。
TypeScript 6.0 とは何か
2026年3月23日、Microsoft は TypeScript 6.0 を正式リリースしました。このバージョンには特別な意味があります。なんと、JavaScript で書かれた最後の TypeScript コンパイラ なんです。
次期 TypeScript 7.0(コードネーム「Corsa」)では、コンパイラが Go 言語で完全に書き直され、約10倍の高速化が計画されています。6.0 はその橋渡しとして、現在の JS コードベースでリリースされる最後のバージョンですね。
とはいえ、6.0 自体にも多くの新機能と破壊的変更が含まれています。プロジェクトを最新環境に追従させるためにも、移行は避けて通れません。
新機能ピックアップ
Temporal API の型定義
JavaScript に待望の日時ライブラリ Temporal が ES2025 として標準化され、TypeScript 6.0 ではその型定義が標準で付属します。
const now = Temporal.Now.instant();
const zoned = Temporal.ZonedDateTime.from({
timeZone: "Asia/Tokyo",
instant: now
});
console.log(zoned.toString()); // 2026-09-02T...
もう moment.js や date-fns に頼る必要はありませんね。
RegExp.escape
ユーザー入力を正規表現で扱うとき、エスケープ処理を自前で書く必要がなくなります。
const userInput = "(hello.world)";
const pattern = new RegExp(RegExp.escape(userInput), "g");
// エスケープ済み: \(hello\.world\)
Map.getOrInsert
マップに対する「なければ作って返す」イディオムが1メソッドで書けるようになりました。
const cache = new Map<string, number[]>();
const list = cache.getOrInsert("users", () => []);
list.push(42);
破壊的変更と移行手順
デフォルト設定の変更
6.0 から tsconfig.json のデフォルト値が大幅に変わりました。
strict: trueがデフォルトにtarget: "es2025"がデフォルトにmodule: "esnext"がデフォルトに
すでに strict モードで運用しているプロジェクトなら影響はほとんどありません。古いプロジェクトで "strict": false に依存している場合は、明示的に設定してください。
baseUrl の非推奨化
これまで baseUrl と paths を組み合わせて使っていた相対インポートの設定が非推奨になりました。
{
"compilerOptions": {
"baseUrl": "./src",
"paths": {
"@/*": ["./*"]
}
}
}
代わりに、各パスを明示的に指定する方法が推奨されます。
{
"compilerOptions": {
"paths": {
"@/*": ["./src/*"]
}
}
}
paths 自体は有効です。単に baseUrl に頼って相対解決する方法が非推奨になっただけなので、パスをフルに書けば問題ありません。
moduleResolution の整理
moduleResolution: "node" が非推奨になり、"node16" か "bundler" を使うのが標準です。
実践: 実際の移行手順
ステップ1: npx ts5to6 を実行
npx ts5to6 --project tsconfig.json
このツールが baseUrl の削除と rootDir の調整を自動で行います。
ステップ2: エラーを確認して修正
npx tsc --noEmit
残ったエラーを1つずつ潰していきます。多くのケースでは paths の書き方を調整するだけで済みます。
ステップ3: 応急処置(時間がない場合)
{
"compilerOptions": {
"ignoreDeprecations": "6.0"
}
}
この設定を追加すると非推奨警告が抑制され、既存のコードがそのまま動きます。ただし、TypeScript 7.0 ではすべての deprecated オプションが完全に削除されるため、必ず移行計画を立ててくださいね。
まとめ
| 項目 | 内容 |
|---|---|
| リリース日 | 2026年3月23日 |
| JS製コンパイラ | 最後のバージョン(次期7.0はGo製) |
| 主要新機能 | Temporal, RegExp.escape, Map.getOrInsert, ES2025標準対応 |
| デフォルト変更 | strict: true, target: es2025, module: esnext |
| 非推奨 | baseUrl, moduleResolution: “node” |
| 移行ツール | npx ts5to6 |
TypeScript 6.0 は「橋渡し」のリリースですが、だからといって軽く見るのは危険です。デフォルト設定の変更や baseUrl の非推奨化は、多くのプロジェクトに影響を与えます。
とはいえ、公式の ts5to6 ツールが優秀なので、移行作業そのものは思ったよりあっさり終わりますよ。この機会に TSConfig を見直して、7.0 に備えたクリーンな設定にしておきましょう。
【広告】お名前.com でドメインを取得して、TypeScript プロジェクトを公開しましょう。![]()
【広告】このサイトはConoHa WINGで運営しています。安定した高速サーバーで快適にブログを書けています。いつもありがとう!!![]()

コメント