編輯:這在技術上是一個2部分問題。我已經選擇了覆蓋此問題的一般答案,並與處理具體問題的答案相關聯。用jsdoc記錄匿名對象和函數的最佳方法
用jsdoc記錄匿名對象和函數的最佳方式是什麼?
/**
* @class {Page} Page Class specification
*/
var Page = function() {
/**
* Get a page from the server
* @param {PageRequest} pageRequest Info on the page you want to request
* @param {function} callback Function executed when page is retrieved
*/
this.getPage = function(pageRequest, callback) {
};
};
無論是PageRequest
對象或callback
中代碼存在。它們將在運行時提供給getPage()
。但我想能夠定義對象和功能是什麼。
我可以逃脫創建PageRequest
對象文件證明:
/**
* @namespace {PageRequest} Object specification
* @property {String} pageId ID of the page you want.
* @property {String} pageName Name of the page you want.
*/
var PageRequest = {
pageId : null,
pageName : null
};
這很好(雖然我接受更好的方法來做到這一點)。
記錄callback
函數的最佳方式是什麼?我想讓它知道,例如,回調函數是在格式的文檔中:
callback: function({PageResponse} pageResponse, {PageRequestStatus} pageRequestStatus)
任何想法如何做到這一點?
真的很整潔!一種記錄回調的好方法。 – oligofren 2013-06-19 09:06:59
但我不明白這是如何工作的匿名對象?說一個發送到某個函數中的設置對象,以創建一個在當前作用域中不可見的對象。 – oligofren 2013-06-19 09:36:49
如果您不想使用'@ name'標籤爲您的匿名對象命名,請描述其使用的對象,這將是設置對象示例的'@ param'標籤正文。 – Eric 2013-06-20 21:18:47