单行代码块

在单行代码块中使用空格

  • 不推荐 | function foo () {return true}if (foo) {bar = 0} | | :—- |
  • 推荐 | function foo () { return true }if (foo) { bar = 0 } | | :—- |

大括号风格

  • One True Brace Style | if (foo) { bar()} else { baz()} | | :—- |

变量命名

当命名变量时,主流分为驼峰式命名(variableName)和下划线命名(variable_name)两大阵营。

团队约定使用驼峰式命名 variableName

不要使用拖尾逗号

  • 不推荐 | var foo = { name: ‘foo’, age: ‘22’,} | | :—- |
  • 推荐 | var foo = { name: ‘foo’, age: ‘22’} | | :—- |

逗号空格

逗号前后的空格可以提高代码的可读性,团队约定在逗号后面使用空格,逗号前面不加空格。
逗号放置在当前行的末尾。

  • 不推荐 | var foo = 1,bar = 2var foo = 1 , bar = 2var foo = 1 ,bar = 2 | | :—- |
  • 推荐 | var foo = 1, bar = 2 | | :—- |

计算属性的空格

团队约定在对象的计算属性内,禁止使用空格

  • 不推荐 | obj[‘foo’ ]obj[ ‘foo’]obj[ ‘foo’ ] | | :—- |
  • 推荐
    | obj[‘foo’] | | :—- |

拖尾换行

在非空文件中,存在拖尾换行是一个常见的 UNIX 风格,它的好处是可以方便在串联和追加文件时不会打断 Shell 的提示。在日常的项目中,保留拖尾换行的好处是,可以减少版本控制时的代码冲突。

  • 不推荐 | function func () { // do something} | | :—- |
  • 推荐 | function func () { // do something} // 此处是新的一行 | | :—- |

函数调用

为了避免语法错误,团队约定在函数调用时,禁止使用空格
_

  • 不推荐 | fn ()fn() | | :—- |
  • 推荐 | fn() | | :—- |

缩进

使用两个空格缩进

对象字面量的键值缩进

团队约定对象字面量的键和值之间不能存在空格,且要求对象字面量的冒号和值之间存在一个空格

  • 不推荐 | var obj = { ‘foo’ : ‘haha’ } | | :—- |
  • 推荐 | var obj = { ‘foo’: ‘haha’ } | | :—- |

构造函数首字母大写

在 JavaScript 中 new 操作符用来创建某个特定类型的对象的一个实例,该类型的对象是由一个构造函数表示的。由于构造函数只是常规函数,唯一区别是使用 new 来调用。所以我们团队约定构造函数的首字母要大小,以此来区分构造函数和普通函数。

  • 不推荐 | var fooItem = new foo() | | :—- |
  • 推荐 | var fooItem = new Foo() | | :—- |

构造函数的参数

在 JavaScript 中,通过 new 调用构造函数时,如果不带参数,可以省略后面的圆括号。但这样会造成与整体的代码风格不一致,所以团队约定使用圆括号

  • 不推荐 | var person = new Person | | :—- |
  • 推荐 | var person = new Person() | | :—- |

空行

空白行对于分离代码逻辑有帮助,但过多的空行会占据屏幕的空间,影响可读性。团队约定最大连续空行数为 1

  • 不推荐 ```javascript var a = 1

var b = 2

  1. - _推荐_
  2. ```javascript
  3. var a = 1
  4. var b = 2

链式赋值

链式赋值容易造成代码的可读性差,所以团队约定禁止使用链式赋值

  • 不推荐 | var a = b = c = 1 | | :—- |
  • 推荐 | var a = 1var b = 1var c = 1 | | :—- |

变量声明

JavaScript 允许在一个声明中,声明多个变量。团队约定在声明变量时,一个声明只能有一个变量

  • 不推荐 | var a, b, c | | :—- |
  • 推荐 | var avar bvar c | | :—- |

分号

推荐不使用分号

代码块空格

  • 不推荐 | if (a){ b()}function a (){} | | :—- |
  • 推荐 | if (a) { b()}
    function a() {} | | :—- |

函数声明的空格

团队约定函数括号前不加空格

  • 不推荐 | function func(x) { // …} | | :—- |
  • 推荐 | function func (x) { // …} | | :—- |

操作符的空格

团队约定操作符前后都需要添加空格

  • 不推荐 | var sum = 1+2 | | :—- |
  • 推荐 | var sum = 1 + 2 | | :—- |

字符串转数字

  • 推荐 parseInt

image.png