缩进使用两个空格
字符串使用单引号,除非是为了避免转义
无未使用的变量
关键字后面要有一个空格
函数参数列表括号前面要有一个空格
始终使用 === 不使用 ==
中缀操作符(infix operators)前后要有一个空格
逗号后面有一个空格
else 与它的大括号同行
if 语句如果包含多个语句则使用大括号
始终处理函数的 err 参数
浏览器全局变量始终添加前缀 window.
不要有多个连续空行
三元表达式如果是多行,则 ? 和 : 放在各自的行上
var 声明,每个声明占一行
用括号包裹条件中的赋值表达式 这是为了清楚的表明它是一个赋值表达式 (=),而不是一个等式 (===) 的误写
单行语句块的内侧要有空格
变量和函数的名字使用 camelCase 格式
无多余逗号
逗号必须放在当前行的末尾
. 应当与属性同行
文件以空行结尾
函数名字和调用括号之间没有空格
键名和键值之间要有空格
构造函数的名字以大写字母开始
没有参数的构造函数在调用时必须有括号
对象若定义了 setter 则必须定义相应的 getter
子类的构造器必须调用 super
使用对象字面量,不使用对象构造函数
不使用 arguments.callee 和 arguments.caller
不要给 class 赋值
不要修改由 const 声明的变量
在条件句中不要使用常量,循环语句除外
<