JSDoc / TSDocジェネレーター
JavaScriptとTypeScriptの関数シグネチャからJSDocまたはTSDocドキュメントコメントを生成します。シグネチャを貼り付けるか、手動フォームビルダーを使用してください。
このツールについて
JSDoc / TSDocジェネレーターは、JavaScriptとTypeScriptの関数シグネチャから ドキュメントコメントブロックを作成する無料のブラウザベースツールです。 関数、メソッド、クラス、またはインターフェース宣言を貼り付けると、ツールが自動的に 名前、パラメータ(型、デフォルト値、オプション性を含む)、戻り値の型、 ジェネリック型パラメータを解析して、完全なJSDocまたはTSDocブロックを生成します。
ジェネレーターは2つの入力モードをサポートしています。パースモードは生のコード
シグネチャ(通常の関数、アロー関数、const宣言、クラス宣言、インターフェース)を
受け付けます。マニュアルモードはフォームで関数名、パラメータ、戻り値の型、
ジェネリクスを手動入力でき、複雑なシグネチャやまだ存在しない関数の
ドキュメント作成に便利です。
TypeScriptの型生成を扱う場合は、JSONデータからインターフェースを生成する JSON to TypeScriptをお試しください。 スキーマバリデーションコードには、JSON to Zodコンバーターが 自然な組み合わせです。
すべての処理はブラウザ内で完全に実行されます。コード、シグネチャ、 ドキュメントテキストがサーバーに送信されることはありません。 プロプライエタリなコードベースや内部APIでも安全に使用できます。
使い方
- パースモード(デフォルト)で関数シグネチャを貼り付けるか、マニュアルモードでフォームに入力します。
- パースモードでは、入力テキストエリアにJavaScriptまたはTypeScriptの関数、アロー関数、クラス、インターフェースのシグネチャを貼り付けます。
- スタイルトグルでJSDocまたはTSDocスタイルを選択します。
- オプションパネルでオプションタグ(
@example、@throws、@since、@author)を有効または無効にします。 @sinceを有効にした場合はバージョン番号を、@authorを有効にした場合は著者名を入力します。- 生成されたドキュメントコメントがシンタックスハイライト付きで出力パネルに即座に表示されます。
- CopyをクリックするかCtrl+Shift+Cを押してコメントをクリップボードにコピーし、コードエディターの関数の上に貼り付けます。
人気のJSDoc / TSDocの例
よくある質問
JSDocとTSDocの違いは何ですか?
JSDocは型アノテーションを波括弧で含みます(例:@param {string} name)。JavaScriptには型システムがないためです。TSDocはTypeScriptが型システムを提供するためインライン型を省略し、@param nameで十分です。TSDocはジェネリック型パラメータに@templateの代わりに@typeParamを使用します。このツールは1つのトグルで両方のスタイルをサポートしています。
どの関数シグネチャ形式がサポートされていますか?
パーサーは通常の関数宣言(function foo())、アロー関数(const foo = () => {})、非同期関数、エクスポートされた関数、クラス宣言、インターフェース宣言、メソッドシグネチャ、ジェネリック型パラメータ、残余パラメータ、オプションパラメータ、デフォルト値、分割代入パラメータを処理します。パーサーが複雑なシグネチャを処理できない場合は、マニュアルモードを使用してください。
クラスやインターフェースをドキュメント化できますか?
はい。クラスまたはインターフェース宣言を貼り付けると、ツールが適切なコメントブロックを生成します。マニュアルモードで種類として「Class」や「Interface」を選択することもできます。
このツールはコードを実行しますか?
いいえ。ツールは文字列操作と正規表現を使用してシグネチャのテキストのみを解析します。eval()やコードの実行は行いません。ASTパーサーやコンパイラは読み込まれません。解析は純粋に構文的です。
データは安全ですか?
はい。すべての処理はJavaScriptを使用してブラウザ内で完全に実行されます。コード、関数シグネチャ、生成されたドキュメントがサーバーに送信されることはありません。ツール使用中にブラウザの開発者ツールのネットワークタブで確認できます。
パラメータにカスタム説明を追加できますか?
マニュアルモードでは、各パラメータにDescriptionフィールドがあり、カスタム説明を入力できます。パースモードでは、生成されたコメントに「TODO: describe parameter」プレースホルダーが使用されるので、コードエディターで実際の説明に置き換えてください。
Reactコンポーネントをサポートしていますか?
はい。'function MyComponent(props: { title: string; count: number }): JSX.Element'や'const MyComponent: React.FC<Props> = ...'のようなReact関数コンポーネントシグネチャを貼り付けると、propsの@paramタグ付きの適切なドキュメントが生成されます。
関連ツール
JSON → TypeScript変換
JSONからネストされた型推論付きでTypeScriptインターフェースや型エイリアスを生成します。
JSON → Zodスキーマ変換
JSONからZodスキーマ定義を生成します。型推論、optional/nullableフィールド、strictモード対応。
コード圧縮ツール
JavaScript、CSS、HTMLコードの圧縮と美化をサイズ比較付きで行います。
JSON → Go構造体変換
JSONからjsonタグと適切な命名規則でGoの構造体定義を即座に生成します。
JSON → Python変換
JSONからPythonのdataclassまたはTypedDictを生成。型安全なPythonコードを任意のJSON構造から生成。