パラメータタイプを混在させることができる場合、JSDocを使用してJavaScriptでメソッドを文書化するにはどうすればよいですか?
HTMLまたは独自のViewableオブジェクトを表示できるDialogオブジェクトのメソッドがあります。 JSDocメソッドは次のようになります。
/**
* Can pass in viewable object, or some HTML element
*
* @param viewable viewable {Viewable} or HTML element {HTMLElement} or String {string}
* @param {Boolean} cancelable is cancellable
* @param title string or data object of String and Id {Title:String, Id:String} for setting HTML id value
* @param {Array} actions array of functions actions display buttons on the bottom connecting to the passed in functions
* @param {String} size mode. Can be mini,small,medium,large,maxi. Or of type {width:number, height:number}
* @param {Number} zindex starting z-order. Note: first level dialog = 10,11,12, second level dialog 13,14,15 etc.
*/
Dialog.showElement = function(viewable, cancelable, title, actions, mode, zindex){
..
}
JSはメソッドのオーバーロードを許可しないため、これらのタイプのメソッドを作成する必要があります。メソッドのパラメーターは2つの異なるタイプにすることができます。これをJSDocで文書化する方法はありますか、それともJSDocでは1つのタイプのパラメーターのみを文書化できますか?
また、タイプ{Title:String, Id:String}
のパラメーターをどのように文書化しますか?つまり、渡されたオブジェクトはタイプではありません。準、JSONオブジェクト。
|
セパレーターを使用して、メソッドタイプシグネチャで複数のタイプを指定できます。
/**
* Some method
* @param {Object|string|number} param The parameter.
* @returns {Object|string|number} The modified param.
*/
function doSomething(param) {
return etc..
};
Google Closure Compiler Docs 次のフォームをお勧めします sejsdoc.org にあるものと同じであるため公式に見えます:
/**
* Some method
* @param {(Object|string|number)} param The parameter.
* @returns {(Object|undefined)} The modified param.
*/
function doSomething(param) {
return etc..
};
上記のリンクされたクロージャーコンパイラのドキュメントを引用するには:
必要な括弧に注意してください。