官方文檔
- sublime插件
https://github.com/spadgos/sublime-jsdocs
- 生成文檔
- 生成html:
(1)安裝:npm install jsdoc -g
(2)執行:jsdoc test.js - 生成markdown:
(1)安裝:npm install jsdoc-to-markdown -g
(2)執行:jsdoc2md text.js > api.md
- 塊標簽
-
對文件進行描述
@author —— 指定項目作者
@copyright —— 描述版權信息
@see —— 描述可以參考外部資源
@version —— 描述版本信息
@tutorial —— 插入一個指向教程的鏈接,作為文檔的一部分
@since —— 描述該功能哪個版本哪個時間添加進來的
@summary —— 描述一個簡寫版本
@file —— 文件說明,在文件開頭使用
@license —— 描述代碼才有那種軟件許可協議 -
標注js使用方法
@returns —— 描述一個函數的返回值
@param —— 描述傳遞給函數的參數
@description —— 描述
@example —— 舉例
@throws —— 描述可能會被拋出什么樣的錯誤 -
開發者備注
@deprecated —— 標注關聯代碼已經被棄用
@todo —— 描述一個將要完成的任務 -
文件詳細結構
@abstract —— 標注該成員必須在子類中實現或重寫
@access —— 標注該成員的訪問級別
@access private > @private
@access protected > @protected
@access public > @public
@augments(@extends) —— 標注這個子類繼承自哪個父類,后面需要加父類名
@class(@constructor) —— 標注該函數是一個構造函數,需要使用new來實例化 function MyClass(){}
@constant(@const) —— 標注這個對象是一個常量
@constructs —— 標注這個函數用來作為類的構造器
@default —— 標注默認值
@exports —— 標注javascript模塊導出的內容
@function(@func、@method) —— 標注該對象作為一個函數
@global —— 標注為全局變量(對象)
@implements —— 標注實現一個接口
@inheritdoc —— 標注繼承其父類的文檔
@inner —— 標注為其父類的內部成員
@instance —— 標注為其父類的實例成員
@interface —— 標注其為可以實現的接口
@kind —— 指明標注的類型(@kind class = @class)
@lends —— 將一個字面量對象的所有成員標記為某個類(或模塊)的成員
@memberof —— 標注成員屬於哪個父級
@mixes —— 標注該對象混入了另一個對象的所有成員
@mixin —— 標注一個混入對象
@module —— 將當前文檔標注為一個模塊
@protected—— 標注為受保護的
@public —— 標注為公開的
@readonly —— 標注為只讀的
@requires —— 標注這個文件需要一個javascript模塊
@static —— 標注為靜態的
@type —— 標注類型
@typeof —— 標注一個自定義的類型
@this —— 描述this關鍵字的指向
@alias —— 標注成員有一個別名
@borrow —— 將另一個標識符的描述添加到當前標識符的描述
@name —— 強制jsdoc使用這個給定的名稱,而忽略代碼里的實際名稱
@namespace —— 標注一個命名空間對象
@override —— 標注覆蓋其父類同名的方法
@private —— 標注為私有
@classdesc —— 與@class結合使用,描述類
@callback —— 描述一個回調函數
@enum —— 描述一個靜態屬性值的全部相同的集合,通常與@readonly結合使用
@event —— 描述事件
@member —— 描述一個成員 @member [] [ ]
@property —— 描述一個對象的屬性
@external —— 標識一個外部的類,命名空間,或模塊
@files —— 標明當一個方法被調用時將觸發一個指定類型的事件
@listens —— 標注監聽事件
@variation —— 區分具有相同名稱的不同對象