@Secretmm
2021-01-20T07:28:55.000000Z
字数 1140
阅读 450
梳理
代码块前要添加空格
if (a) {b()}function a() {}
在单行代码块中使用空格
// 推荐function foo() { return true; }if (foo) { bar = 0; }// 不推荐function foo() {return true;}if (foo) {bar = 0;}
函数括号前不加空格
function func(x) {// ...}
在函数调用时,不使用空格
// 推荐fn();// 不推荐fn ()fn()
操作符前后都需要添加空格
const sum = 1 + 2;
const obj = { foo: 'haha' };
在对象的计算属性内,不使用空格
// 推荐obj[foo]// 不推荐obj[foo ]obj[ foo]obj[ foo ]
在逗号后面使用空格,逗号前面不加空格
const foo = 1, bar = 2
逗号不出现在行首
// 不推荐const foo = 1,bar = 2;const foo = 1, bar = 2;const foo = ['name', 'age'];
]或}在不同行时,使用拖尾逗号] 或 }当在同一行时,禁止使用拖尾逗号
// 不推荐const foo = { name: 'foo', age: '22', };
建议文件末保留拖尾换行
function func () {// do something}// 此处是新的一行
大括号相对代码位置遵循如下风格(One True Brace Style):
if (foo) {bar()} else {baz()}
class类/构造函数命名使用大驼峰式命名使用空格缩进,缩进量为4空格
一行最多有4个链式调用,超过要求换行
最大连续空行数为2
不省略句末的分号
不使用自增++和自减--运算符,用+=和-=代替
总是用大括号表示区块
// 推荐if (a) { b(); }// 不推荐if (a) b();
减少含义不明的数字,尽量使用命名常量代替,在ts中尽量使用enum代替
// 推荐const STATUS = {READY: 0,SUCCESS: 1,FAILED: 2,};if (type === STATUS.READY) {// TODO}// 不推荐if (type === 0) {// TODO}