関連:JSDocでオープンエンドの引数関数を文書化する正しい方法
arguments
変数にアクセスして複数の配列を受け入れる関数があります。
/**
* @param options An object containing options
* @param [options.bind] blablabla (optional)
*/
function modify_function (options) {
for (var i=1; i<arguments.length; i++) {
// ...
}
}
options
これで、他の各引数は、文書化する価値のある値を含む配列であることがわかりました。
[search_term, replacement, options]
(長い)説明を変数パラメーター行に入れることは考えていません。
@param {...}検索語、置換、およびそのオプションを含む配列。インデックス0:関数内の検索語。1:置換テキスト。2:オプションのオプション(catch_errors:エラーをキャッチしてログに記録する、escape:置換テキストのドルをエスケープする、pos:検索語の前に置換を配置する場合は "L"、後に配置する場合は "R")読み取り可能なソリューションではなく、タイプは表示されません。
変数パラメーターのタイプと値を文書化する方法はありますか?
@param {...[]} An array with search terms, replacements and its options
@param {...[0]} The search term within the function
@param {...[1]} The replacement text
@param {...[2]} An optional object with obtions for the replacement
@param {...[2].catch_errors} catches errors and log it
@param {...[2].escape} etc...
上記は醜いように見えますが、それは私が達成しようとしていることのアイデアをあなたに与えるはずです:
- 変数パラメーター(この場合は配列)のタイプを文書化します
- この配列の値を文書化します
- この配列内のオブジェクトのプロパティを文書化する
怠惰のために、私はオブジェクトの代わりに配列を使用しました。他の提案はいつでも歓迎です。