JSDoc 快速上手
SegmentFault
共 1808字,需浏览 4分钟
· 2021-07-10
作者:Midqiu
来源:SegmentFault 思否社区
JSDoc 是在JS代码的注释里,以特定的格式标记变量的类型,函数的参数、返回值等,这样做可以避免调用函数的时候传错或少传参数,提高代码的健壮性,减少bug;再加上编辑器的支持,可以极大的提高编码的效率。
比如说下面的这个例子,
因为我们标记了pd
的类型,当调用pd
这个变量的时候,编辑器可以非常方便的提示这个对象上有什么方法。
我们翻看JSDoc的官方文档发现罗列了一大堆的功能,但其实常用的功能也就几个,只需要花几分钟掌握一下下面的几个使用方法,就可以大幅度提高写代码的编辑体验。
JSDoc语法上要求以/**
开头,*/
的注释。
声明函数的参数
的类型
@param {参数的类型} 参数的名 注释
/**
然后按回车,编辑器会自动替我们补充好相关的变量名等信息,我们只需要填上参数的类型就可以了。![](https://filescdn.proginn.com/d48623e964b322d5e06ab0aab4ed30d3/45fcc368fb28570ad525ad70eee9a86f.webp)
![](https://filescdn.proginn.com/7b34244142591b7a12221c83b6dab3a4/d0d39015c2eb19dda31deb83eb6770cd.webp)
类型
除了图上所示的string
之外,还有boolean
、 undefined
、 null
类型;还有复杂类型,{key1:string,key2?:number}
;还可以相互组合比如 string|number
等typescript里面可以用type
定义的。声明函数的返回值
的类型
@returns
来指定函数的参数类型和返回值类型@returns {string}
/**
*
* @param {string} id 注释注释注释
* @param {string} name 注释注释注释
* @returns {string}
*/
function getName(id, name) {
//name.
}
![](https://filescdn.proginn.com/5b25c632e9c0c39e492140beae85a012/e786dd48bee595a46a0843953c3ae61a.webp)
声明变量的类型
/**@type {string} */
var aaa=global.aaa
![](https://filescdn.proginn.com/f39a14863674d11317a054bf80bd29d0/57fb718aba9c520813903baa3f8308f6.webp)
定义一个类型
类型
,供其他地方使用。@typedef {类型} 类型名
/**@typedef {{name:string,age:number}} User */
/**
* @typedef {Object} User
* @property {string} name
* @property{number} age
*/
![](https://filescdn.proginn.com/4745129e4e20a26e873e41b9419789c8/faf530fe34ea530089e4317624b4c09d.webp)
![](https://filescdn.proginn.com/c0c5f101340fda277085d7893913d340/3e7184529c4b8592f4c35f09cbb6d3d5.webp)
定义一个函数类型的复杂类型:
/**@typedef {(a:string,b:string)=>void} FN */
/**@typedef {Function} FN
* @argument {string} a
* @argument {string} b
*/
![](https://filescdn.proginn.com/6fa40dcbb3532d9114e9cba4ca173d9e/a027588edf68e4efac889781da2467b1.webp)
评论
金狮
创建于1938年,北京二商集团旗下专业调味品品牌,以经营酱油、食醋类调味品为主,集生产制造/批发零售/贸易出口/技术咨询为一体的现代化食品工业企业北京二商金狮龙门食品有限公司,是以经营酱油、食醋类调味
金狮
0
金狮花园
物业公司暂无开发商暂无小区地址湖北省/荆门市/沙洋县/后港镇/荆玻大道378号物业类型公寓住宅权属类别商品房住宅竣工时间暂无产权年限70年总户数暂无总建面积暂无容积率暂无绿化率暂无建筑类型多层所属商圈
金狮花园
0
金狮游乐
中山市金狮游艺机械设备有限公司是生产游乐机械产品的企业,是中国游艺机游乐园协会会员单位。也是广东省和中山市特种设备协会会员单位。从事游艺机加工生产已有二十多年。能设计生产的游艺机风格独特、款式新颖、造
金狮游乐
0
金狮苑
物业公司暂无开发商暂无小区地址广西壮族自治区/百色市/田阳区/田州镇/解放东路232号物业类型公寓住宅权属类别商品房住宅竣工时间暂无产权年限70年总户数暂无总建面积暂无容积率暂无绿化率暂无建筑类型高层
金狮苑
0