TypeScript タイプ ストリッパー
ガイド
TypeScript タイプ ストリッパー
TypeScript Type Stripperは、TypeScriptのソースコードをクリーンで実行可能なJavaScriptに変換し、言語がECMAScriptの上に加えるすべてのコンパイル時構文を削除します。型アノテーション、インターフェース宣言、型エイリアス、ジェネリックパラメータ、エnum、デコレーター、および非nullアサーションは、1つの決定論的なパスで削除され、プログラムの実行論理は正確に保持されます。
このツールは、公式なTypeScriptコンパイラAPIを使用してブラウザ内で実行され、あなたのソースコードがあなたのマシンから出ることはありません。出力は、同じ入力に対してtscが生成するものとまったく同じであり、ライブラリの移植、シンプルなJavaScriptコンテキストでのスニペット共有、変換後の動作のデバッグ、およびTypeScriptを必要としなくなったプロジェクトへの移行に安全です。
使用方法
- TypeScriptソースコードを入力エリアに貼り付け、またはドロップしてください
.tsまたは.tsxファイルをアップロードしてください。 - 出力モードを選択: タイプの削除のみ 現代的な構文を保持し、ES2020、ES2017、およびES5のターゲットはさらに新しい言語機能を下位化します。
- コードにJSX表現がある場合は、JSXの処理オプションを選択し、JSDocの保持、タイプのみのインポート削除、コメントの削除を好みに応じて切り替えます。
- コンパイラが終了した時点で、出力パネルにシンプルなJavaScriptが表示されます。コピーまたはダウンロードボタンを使用して結果を取得できます。
機能
- 決定論的なAST変換 – 官方のTypeScriptコンパイラに基づいており、出力はバイト単位で再現可能です。
- タイプの削除のみまたは下位化 – プレーンなタイプ削除またはES2020、ES2017、またはES5への完全な変換を選択できます。
- 完全な言語サポート – インターフェース、型エイリアス、ジェネリック、エnum、デコレーター、パラメータプロパティ、および非nullアサーションを正確に処理します。
- JSX対応 – 保持
.jsx出力または変換をReact.createElement呼び出し。 - コメント制御 – JSDocブロックを保持、削除、または生産用のビルドですべてのコメントを削除できます。
- タイプのみのインポートクリーンアップ – 動作しないものに参照していない
import typeステートメントを削除します。 - プライバシー第一 – すべてがブラウザ内で実行され、コードがサーバーにアップロードされません。
- サイズ報告 – 削除された出力が元のソースコードと比べて何バイト節約されているかを確認できます。
よくある質問
-
TypeScriptとは何ですか?JavaScriptとどう異なりますか?
TypeScriptはJavaScriptの厳密なスーパーセットであり、静的型アノテーション、インターフェース、エnum、ジェネリック、およびその他のコンパイル時構文を追加します。TypeScriptコンパイラ(tsc)はこれらの構文を抽象構文木(AST)にパースし、型層を削除して標準適合のJavaScriptを出力します。型はコンパイル時のみ存在するため、よく型付けされたTypeScriptの実行時動作は、その変換されたJavaScriptとまったく同じになります。
-
型除去が決定論的な変換である理由は何ですか?
型除去は、パースされたASTに作用するため、決定論的です。木の各ノードは明示的な種類を持ち、コンパイラはタイプのみのノード(例:TypeAnnotation、InterfaceDeclaration、TypeAliasDeclaration)を削除し、隣接する値生成式に影響を与えません。結果としてのJavaScriptは、ソースコードが文法的に正しい場合、セマンティクスを正確に保持されます。
-
ECMAScript下位ターゲットとは何ですか?なぜそれが重要ですか?
ECMAScript版(ES2017、ES2020、ES2022など)は、ブラウザや実行環境がネイティブに実装する言語機能を定義しています。下位ターゲットは、コンパイラが新しい機能(オプションチェーン、async/await、クラスフィールドなど)を古いターゲットが実行できるように同等のコードに変換するように指示します。低いターゲットを選択することで、互換性が広がりますが、出力サイズと出力されるヘルパー関数のコストが増加します。
-
宣言ファイルと実行時コードはどのように異なりますか?
宣言ファイル(.d.ts)には、インターフェース、型エイリアス、関数署名、モジュール形状などのみの環境型情報が含まれます。コンパイル時に実行コードを生成しません。実装ファイル(.ts)は型宣言と実行時表現を組み合わせます。変換時に、すべての.d.tsコンテンツが消え、実行可能な部分のみがJavaScriptにエミットされます。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
