JavaScript

命名规范

驼峰命名法

Pascal Case 大驼峰命名法,所有单词首字母大写,如:

BreadCrumb,TimeSelect,MessageBox

Camel Case 小驼峰命名法,第一个单词首字母小写,其余单词首字母大写,如:

breadCrumb,timeSelect,messageBox

JavaScript中的标识符如没有特殊说明,一般采用小驼峰命名法。

变量

  • 命名规则: 名词形式

  • 命名方式:

    • 普通变量:小驼峰命名法;
    • 私有变量:下划线+单词的命名方式,如:this._name = 'Javascript';
    • 常量:常量全部大写,多个单词以下划线链接,如:const ERROR_CODE = 1;

函数

  • 命名方式: 小驼峰命名法

  • 命名规则: 动词 + 名词,即采用动词作为前缀,常见的动词前缀如下:

动词 含义 返回值
can 判断是否可执行某个动作(权限) 返回一个布尔值。true:可执行;false: 不可执行
has 判断是否含有某个值 返回一个布尔值。true:含有此值;false: 不含有此值
is 判断是否为某个值 返回一个布尔值。true:为某个值;false: 不为某个值
get 获取某个值 返回一个非布尔值
set 设置某个值 无返回值、返回是否设置成功或返回链式对象

构造函数和类

  • 命名方式: 大驼峰命名法

  • 命名规则: 名词形式

WARNING

除了字符串中可以使用中文外,其他地方一律禁止使用中文标识符,尤其是对象的属性名(包括数字)

变量声明与初始化

  • 常量用必须采用const关键字来声明,并且变量标识符要全部大写;
  • 普通变量使用let关键字声明,一般情况下不允许使用var关键字;
  • 声明变量的时候必须初始化,如果声明的时候没有初始化值,则如下:
  // 基本数据类型初始化
  let a = '';

  // 引用类型初始化
  let obj = null;

注释

单行注释

单行注释(双斜线 //)用来注释单行内容,可以单独一行,也可以跟在代码后面。单行注释和注释内容之间必须空一个空格,当跟在代码后面时,双斜线前面必须和代码空一个空格,如:

// 调用setTitle方法,设置document.title
setTitle('注释');

setTitle('注释'); // 调用setTitle方法,设置document.title

// setTitle('注释');

多行注释

  • 需要多行注释时必须使用多行注释,禁止使用多个单行注释的方式;
  • 若/* */在同一行时,推荐使用单行注释;
  • 多行注释的‘*’号和注释内容之间必须空一个空格。
/*
 * 调用setTime方法来设置系统时间
 * setTime();
 */

函数注释

函数注释是多行注释的一种,但包括特殊的注释要求,如下:

/*
 * 函数说明
 * @关键字
 */

常用关键字有:

注释名 语法 含义 示例
@param @param 参数名 {参数类型} 描述信息 描述参数的信息 @param name {String} 传入名称
@return @return {返回类型} 描述信息 描述返回值的信息 @return {Boolean} true:可执行;false:不可执行
@author @author 作者信息 [附属信息:如邮箱、日期] 描述此函数作者的信息 @author 张三 2015/07/21
@version @version XX.XX.XX 描述此函数的版本号 @version 1.0.3
@example @example 示例代码 @example setTitle('测试')

更多用法,请参考 javadoc(百度百科)

字符串

字符串必须使用单引号

空行

为了提高代码可读性,请在代码片段之间合理添加空行(1个空行);

分号

语句末尾必须加分号,否则eslint报错。

  • return语句必须加分号;
  • function关键字声明的函数闭合大括号后面不用加分号,但函数表达式声明的函数后面必须加分号;
function getFullName(user) {
    let { firstName, lastName } = user;
    return `${firstName} ${lastName}`;
}

var getFullName = function(user) {
    let { firstName, lastName } = user;
    return `${firstName} ${lastName}`;
};
  • import/export语句后面必须加分号。

更多用法请参考 eslint-standard

上次更新: 9/10/2018, 11:29:36 AM