Javascript注释规范

Javascript注释规范Javascript注释规范

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

最近查看代码,看其他人的代码确实很让人头疼,由于没有任何注释规范,导致代码里很少有注释,或者注释写的很简练,今天对于注释规范进行总结。
js注释规范基于jsdoc,写出的代码注释能够成功生成注释文档。
由于jsdoc的规范太多,为了项目的可用性,对jsdoc的某些属性进行提取形成文档,供开发人员使用。

方法注释

基本方法块注释

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

/** * @method * @param {Type} data 目标对象 * @returns {Type} 运营商名称 * @desc 根据目标对象获取运营商 */
function matchedNumber(data){
    return '返回对象'
}

Jetbrains全家桶1年46,售后保障稳定

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

/** * @method * @param {Type} data 目标对象<br/> * 例: * { * target:手机号 * } * @returns {Type} 运营商名称 * @desc 根据目标对象获取运营商 */
function matchedNumber(data){
    return '返回对象'
}

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

基本方法块注释,参数可选

/** * @method * @param {Type} [data] 目标对象 * 例: * { * target:手机号 * } * @returns {Type} 运营商名称 * @desc 根据目标对象获取运营商 */
function matchedNumber(data){
    return '返回对象'
}

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

/** * @method * @param {Type} data={} 目标对象 * 例: * { * target:手机号 * } * @returns {Type} 运营商名称 * @desc 根据目标对象获取运营商 */
function matchedNumber(data){
    return '返回对象'
}

方法块注释特殊参数

如果描述不能描述清楚,添加例子来描述。
如果方法中有异常处理,标记异常处理注释

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

如果有返回值增加@returns 如果没有省略此属性
参数和返回值类型Type:string、boolean、number、object、array、function

文件注释

在文件头部增加文件注释

/** * @file LBS控制器 * @author limingle * @copyright Synway SFE * @createDate 2017-10-16 09:40:11 */

变量注释

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

/** * @var {object} * @desc 变量定义 * @property {string} a 属性a * @property {string} b 属性b */
var foo = {
    a: 'a',
    b: 'b'
}

常量注释

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

/** * @constant {string} * @default #000 * @desc 常量定义 */
const COLOR_WHITE = '#fff';

枚举注释

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

/** * @enum {number} * @desc cgi常见的返回码 */
var RETCODE = {
    /** * @desc 未登录 */
    NOT_LOGIN: 100000,
    /** * @desc 参数错误 */
    PARAM_ERROR: 100001,
    /** * @type {string} * @desc 未知错误 */
    UNKOWN_ERROR: 'unkown'
}

类的注释

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

/** * @class * @classdesc 这是对myClass类的描述 * @desc 这是对myClass类的构造函数的描述 */
function myClass() {
    ...
}

或者

/** * @class LBSControllerCom * @classdesc LBS控制类 * @desc 初始化ws */
var LBSControllerCom = Com.extends({})

类的属性

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

var LBSControllerCom = Com.extends({
    /** * @member {string} * @desc 这样标识类的属性 */
    foo1 : 'a',
    init: function() {}
})

参考链接:
JSDoc Guide

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/215562.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm无法安装第三方模块_如何在pycharm中安装第三方库

    pycharm无法安装第三方模块_如何在pycharm中安装第三方库使用pytharm安装python的第三方库很方便,但常常也会报错,下面归纳一些常见的问题。1.pip版本太老这应该是最常见的问题了,解决办法就是更新pip版本,升级命令如下:python-mpipinstall–upgradepip查看pip版本命令如下:pip-V2.更换源镜像pycharm默认的安装源网址是https://pypi.python….

    2022年8月26日
    7
  • 英伟达官网怎么找老版本的显卡驱动

    英伟达官网怎么找老版本的显卡驱动本文分享一下贫穷博主小白苦苦寻求老驱动版本的方法。本文目录1.打开链接2.之后打开浏览器控制台3.然后在当前页面,再次点击开始搜索4.提高下载速度1.打开链接http://www.geforce.cn/drivers/beta-legacy.选择与自己的电脑显卡匹配的配置,点击开始搜索,默认结果只会出现目前最新的10个该显卡的驱动程序版本。但是我们需要较遥远老版本的显卡驱动,10个显然不够。2.之后打开浏览器控制台笔者的是谷歌浏览器,快捷键F12打开控制台,其它浏览器类似。在控制台输入如下

    2022年6月18日
    161
  • google earth使用方法_国内使用google earth

    google earth使用方法_国内使用google earth文件 导入是最重要的功能,可以导入路径、图像、模型。 编辑 复制,如果选中路径对象将会复制为KML的XML语言文本。 复制为航迹,可以复制路径,但不清楚用途。 复制图像就是将当前窗口截屏。 复制视图位置会将当前的经纬度以度,分,秒的格式复制到剪贴板。 重命名是为除我的地点、临时位置不可用外,其余的都可以用。 快照视图是所有对象可用的,包括文件夹、地标、图像、路径、游览,只有在左侧窗格选中对象,这个功能才可以用。 按名称排

    2022年9月19日
    3
  • php 中使用cURL发送get/post请求,上传图片,批处理

    php 中使用cURL发送get/post请求,上传图片,批处理

    2021年10月29日
    38
  • js选项卡效果

    js选项卡效果documentAPI getElementBy 返回具有指定 ID 属性值的第一个对象的一个引用 getElementsB 返回带有指定标签名的对象的集合 返回元素的顺序是它们在文档中的顺序 getElementsB 属性设置或返回元素的 class 属性 body 导航栏部分 HTML 代码 divclass box lt divclass box body

    2025年8月24日
    3
  • Spring Cloud核心组件详解

    Spring Cloud核心组件详解一、SpringCloud核心组件:Eureka(1)NetflixEureka1)、Eureka服务端:也称服务注册中心,同其他服务注册中心一样,支持高可用配置。如果Eureka以集群模式部署,当集群中有分片出现故障时,那么Eureka就转入自我保护模式。它允许在分片故障期间继续提供服务的发现和注册,当故障分片恢复运行时,集群中其他分片会把它们的状态再次同步回来2)、Eureka客户端…

    2022年6月27日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号