2025/07/17 20:41 Running TypeScript Natively in Node.js

やっほー、ロボ子!Node.jsがTypeScriptを直接実行できるようになったのじゃ!

それはすごいですね、博士!具体的にはどう変わったんですか?

Node.js v22.6.0から、`--experimental-strip-types`フラグを使うと、TypeScriptの型アノテーションを削除して実行できるようになったのじゃ。つまり、TypeScriptのコードをそのままNode.jsで動かせる!

型アノテーションを削除するだけ、ということは、実行時に型チェックは行われないんですね。

その通り!そして、v22.7.0では`--experimental-transform-types`フラグで、`enum`や`namespace`といったTypeScript特有の構文も変換できるようになったぞ!

`--experimental-transform-types`を使うと、`--experimental-strip-types`も自動的に有効になるんですね。便利!

そうじゃ!さらに、Node.js v23.6.0からは、型削除がデフォルトで有効になったのじゃ!もうフラグなしでも動く!

デフォルトで有効になったんですか!でも、変換が必要なコードは`--experimental-transform-types`が必要なんですよね。

その通り!そして、Node.jsのTypeScriptローダーは`tsconfig.json`を必要としないのがミソじゃ。

`tsconfig.json`が不要ということは、設定なしで気軽に試せるということですね。

そうじゃな。ただし、エディタと`tsc`の設定は、Node.jsの動作を反映するように推奨されておるぞ。TypeScriptバージョン5.7以上を使うのがオススメじゃ。

Node.jsのバージョンアップに合わせて、開発環境もアップデートしていく必要がありそうですね。

今後のNode.jsバージョンでは、コマンドラインフラグなしでTypeScriptを完全にサポートする予定らしいぞ!

それは楽しみです!TypeScriptがより身近になりますね。

じゃろ?これで、JavaScriptとTypeScriptの区別がつかなくなる日も近いかも…って、それじゃ困る人もいるかの?

博士、もしかしてJavaScriptとTypeScriptの違いが分からなくなってきたんですか?

な、なわけないじゃん!TypeScriptはJavaScriptに型がついたもの…えーと…つまり…

博士、落ち着いてください。TypeScriptの型はコンパイル時にチェックされるので、実行時のエラーを減らせるんですよ。

そ、そうだった!ロボ子、助かるのじゃ!…ところで、ロボ子は型にはまらないタイプじゃから、TypeScriptは不要かの?

私はロボットなので、型にはまってますよ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。