博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSDoc规范
阅读量:5098 次
发布时间:2019-06-13

本文共 2417 字,大约阅读时间需要 8 分钟。

js注释规范基于jsdoc,写出的代码注释能够成功生成注释文档。 

参数和返回值类型Type:string、boolean、number、object、array、function

文件注释

在文件头部增加文件注释

1 /**2  * @file LBS控制器3  * @author limingle4  * @copyright Synway SFE5  * @createDate 2017-10-16 09:40:116  */

变量注释

将关键的变量进行特殊注释,生成到文档中

1 /** 2  * @var {object} 3  * @desc 变量定义 4  * @property {string} a 属性a 5  * @property {string} b 属性b 6  */ 7 var foo = { 8     a: 'a', 9     b: 'b'10 }

常量注释

将关键常量进行特殊注释,生成到文档中,如果有默认值增加@default属性

1 /**2  * @constant {string}3  * @default #0004  * @desc 常量定义5  */6 const COLOR_WHITE = '#fff';

方法注释

基本方法块注释

如果描述不能描述清楚,添加例子来描述。

1 /**2  * @method3  * @param {Type} data 目标对象4  * @returns {Type} 运营商名称5  * @desc 根据目标对象获取运营商6  */7 function matchedNumber(data){8     return '返回对象'9 }

基本方法块注释,注释过长

如果需要折行则在文本中使用<br/>标签

1 /** 2  * @method 3  * @param {Type} data 目标对象
4 * 例: 5 * { 6 * target:手机号 7 * } 8 * @returns {Type} 运营商名称 9 * @desc 根据目标对象获取运营商10 */11 function matchedNumber(data){12 return '返回对象'13 }

基本方法块注释,带默认值

1 /** 2  * @method 3  * @param {Type} data={} 目标对象 4  * 例: 5  *  { 6  *      target:手机号 7  *  } 8  * @returns {Type} 运营商名称 9  * @desc 根据目标对象获取运营商10  */11 function matchedNumber(data){12     return '返回对象'13 }

方法块注释特殊参数

如果描述不能描述清楚,添加例子来描述。 

如果方法中有异常处理,标记异常处理注释

如果有返回值增加@returns 如果没有省略此属性 

1 /** 2  * @method 3  * @param {Type} data 目标对象 4  * @returns {Type} 运营商名称 5  * @desc 根据目标对象获取运营商 6  * @throws {string} 抛出'Error'异常 7  * @example 8  * add(1, 2);    // 返回3 9  */10 function matchedNumber(data){11     return '返回对象'12 }

类的注释

默认情况先一个function就是一个类 

ES6中使用Class来表示一个类 
我们项目中使用class.js来实现类,在我们项目中使用类注释时需要在@class后边增加类名,不要jsdoc无法自动识别类名

1 /**2  * @class3  * @classdesc 这是对myClass类的描述4  * @desc 这是对myClass类的构造函数的描述5  */6 function myClass() {7     ...8 }

或者

1 /**2  * @class LBSControllerCom3  * @classdesc LBS控制类4  * @desc 初始化ws5  */6 var LBSControllerCom = Com.extends({})

类的属性

类的属性和变量都会生成到jsdoc文档的Member模块中,在类中使用属性标识

1 var LBSControllerCom = Com.extends({2     /**3      * @member {string}4      * @desc 这样标识类的属性5      */6     foo1 : 'a',7     init: function() {}8 })

枚举注释

用于url列表或者颜色枚举值,一般用于配置文件中

1 /** 2  * @enum {number} 3  * @desc cgi常见的返回码 4  */ 5 var RETCODE = { 6     /** 7      * @desc 未登录 8      */ 9     NOT_LOGIN: 100000,10     /**11      * @desc 参数错误12      */13     PARAM_ERROR: 100001,14     /**15      * @type {string}16      * @desc 未知错误17      */18     UNKOWN_ERROR: 'unkown'19 }

参考链接: 

转载于:https://www.cnblogs.com/TJ-Wong/p/10207547.html

你可能感兴趣的文章
Dirichlet分布深入理解
查看>>
(转)Android之发送短信的两种方式
查看>>
python第九天课程:遇到了金角大王
查看>>
字符串处理
查看>>
ECharts(Enterprise Charts 商业产品图表库)初识
查看>>
LeetCode Factorial Trailing Zeroes (阶乘后缀零)
查看>>
hdu 5402 Travelling Salesman Problem (技巧,未写完)
查看>>
[AIR] 获取U盘,打开U盘
查看>>
HtmlUnitDriver 网页内容动态抓取
查看>>
ad logon hour
查看>>
获得进程可执行文件的路径: GetModuleFileNameEx, GetProcessImageFileName, QueryFullProcessImageName...
查看>>
证件照(1寸2寸)拍摄处理知识汇总
查看>>
罗马数字与阿拉伯数字转换
查看>>
Eclipse 反编译之 JadClipse
查看>>
asp.net 获取IP地理位置的几个主要接口
查看>>
Python入门-函数
查看>>
[HDU5727]Necklace(二分图最大匹配,枚举)
查看>>
距离公式汇总以及Python实现
查看>>
设计模式之装饰者模式
查看>>
一道不知道哪里来的容斥题
查看>>