DocsBuilder生成JSdoc
DocsBuilder是.NET編寫的用來生成 C# API文檔的工具。而DocsBuilder的此次更新,增加了對JavaScript的支持。今天,筆者就測試一個它生成JavaScript API文檔的結果。
下載地址:http://www.shinater.com/DocsBuilder/DocsBuilderGUI.zip
DocsBuilder主頁:http://www.shinater.com/DocsBuilder.xhtml
像JsDoc Toolkit一樣,DocsBuilder也使用javadoc注釋規范,那么我們就先注釋一個函數試試。
/**
* 測試的類。
* @param name 參數名。
*/
function MyClass(name){
}
生成的文檔的截圖:
按照DocsBuilder的幫助介紹,可以為參數指定參數,方法是在注釋文本前加上(類型),我們加上類型試試。
/**
* 測試的類。
* @param name (String)參數名。
*/
function MyClass(name){
}
確定被識別了,效果還不錯。接下來,我們為這個類添加屬性和方法。
/**
* 測試的類。
* @param name (String)參數名。
*/
function MyClass(name){
/**
* 這是一個屬性。
*/
this.name = name;
/**
* 這是一個方法。
*/
this.method = function(){
alert(this.name);
}
}

點擊 method 后的效果:
可以看出屬性和方法的聲明都轉換成原型定義了,那么我們就使用原型添加一個復雜的方法。
/**
* 測試方法2。
* @param param1 (String)參數1。
* @param param2 (String)參數2。
* @return (Number)參數1的長度。
* @throws Error 參數1為null。
*/
MyClass.prototype.method2 = function(param1,param2){
return param1.length;
}
看來普通代碼都能正確處理。
在代碼復雜的情況下,我們會使用對象模擬一個命名空間,并裝入多個類聲明。我們試試聲明命名空間。
/**
* 聲明一個對象。
*/
var a1 = new Object();
/**
* 按DocsBuilder的規定,值為{}的空對象才被認為是命名空間。
*/
var a2 = {};
/**
* 命名空間下的類。
*/
a2.MyClass2 = function(){
}
其它標記今天都不再測試了。
最后,試試修改文檔模板,DIY一下。這也是DocsBuilder最突出的功能了。
用記事本打開模板文件type.html,在<body>標記下加上:<a href="#" style="float:right;">訪問我的空間</a>。