javascript企业级编程规范
1. 文件夹(项目)命名规范
- 全部采用小写, 以中划线分隔。如:
ant-design-pro
。 - 可采用
名字-描述-类型
这种命名方式。
2. 子项目目录名
- 全部采用小写,当有复数结构时,要采用复数命名法,如有多个单词时,用中划线连接,比如说:
scripts
,styles
,images
,data-models
。
3. javascript文件命名
- 全部采用小写,当遇到多个单词组成时,采用中划线连接方式。比如说:检查
commit
提交文件,check-commit.js
。 - 当出现版本号时, 需要用字母
v
做为前缀, 小版本号用点号(.)
隔开,global-v8.js
或detail-v2.2.js
。 - 如果
js
和css
是压缩文件, 统一以-min
结尾, 比如源码文件为react.js
, 压缩后为react-min.js
,一般线上坏境,为了减少体积,可以选用压缩版本。
4. CSS,LESS,SCSS文件命名
- 全部采用小写,参照项目命名规则,当遇到多个单词组成时,采用中划线连接方式,比如说:
retina-sprites.scss
。
5. HTML文件命名
- 全部采用小写,同样参照项目命名,当遇到多个单词组成时,采用中划线连接方式,比如说:
error-report.html
。
6. 图片资源命名
- 全部采用小写,遇到多个单词组成时,采用下划线连接方式,比如说:
input_bg_search_default@2x.png
。
7. 注释规范
当针对整个文件的注释,必须放在js⽂文件的开头,注释顺序及内容如下,这个不是硬性规定的,具体与自己的公司,项目注释规范而定。
- 版权信息,如:
Copyright © 2020, xxx company. All rights reserved
。 - 产品及模块信息。
- 创建日期,日期格式为:
YYYY-MM-DD
。 - 作者信息,格式为花名+工号,没有工号直接写自己昵称即可。
- 描述信息,用于简单介绍该
js
文件的功能,准确简练就好。
/*
* @LineStart: -------------------------------------------
* @Copyright: © 2020, itclanCoder. All rights reserved.
* @LineEnd: ----------------------------------------------
* @Product: h5活动页
* @Mode Name: 转盘抽奖
* @Autor: vxPublic:itclanCoder
* @Date: 2020-02-19 16:42:51
* @Version: xxx.v1.0
* @LastEditors: 1条粉肠
* @LastEditTime: 2020-02-24 11:14:41
* @Description: 转盘抽象公共js模块的封装
*/
单行注释
- 双斜线后,必须跟注释内容保留一个空格。
- 可独占一行, 前边不许有空行, 缩进与下一行代码保持一致。
// Good,圆括号后有一空格
if (condition) {
// 如果你在此处完成,则所有安全检查都通过了
allowed();
}
var sName = "itclanCoder"; // 双斜线距离分号四个空格,双斜线后始终保留一个空格
多行注释
- 最少三行, 格式如下所示。
- 前边留空一行。
/*
* 注释内容与星标前保留一个空格
*/
变量语句注释
- 针对变量中的语句注释,可以放在变量定义行和语句行的上一行,使用
javaScript
标准的单行注释,如下所示。
// 获取窗口的宽度
var nWidth = widow.screen.width;
函数注释
针对某个函数的注释,必须放在函数定义行的上一行,注释内容包括:
- 函数功能说明,介绍该函数的功能。
- 参数列表,各个参数的说明,如果没有参数,该内容可以省略。
- 返回值,返回值说明,如果没有返回值,该内容可以省略。
/**
* 函数功能详细 打开模态对话框
* @param [参数1] [参数说明]
* @param [参数2] [参数说明]
* @return [返回值说明]
*/
function openModelDialog(url, winName, width, height) {
// 具体的详细代码
}