Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upJavaScript 团队规范参考 #43
Open
Comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
目录
引子
这是 CSS 团队规范参考 之后一直想写的一部分,后来和一起共事的人结合实际的项目情况,讨论过比较有针对性的 JavaScript 规范,在此基础上,结合个人的一些想法,弄出一个版本,当作参考。
规范
规范是一个团队里面共同遵守的约定。随着时间的推移,有很大可能性会发生变化。在实施中,结合实际项目情况不断的检验、思考、总结、调整,这样就可以逐渐形成最适合自身团队的规范。
原则
const或let,不要使用var。const, 因为这样可以防止被修改。new的方式,new的方式无法预期结果。...替代Object.assign()。命名
代码风格
缩进
使用 2 个空格。
分号
以下几种情况后需加分号:
returnthrowbreakcontinuedo-while空格
以下几种情况不需要空格:
(前不要空格[后和]前{后和}前(后和)前以下几种情况需要空格:
?:前后{前else,while,catch,finallyif,else,for,while,do,switch,case,try,catch,finally,with,return,typeof//后(若单行注释和代码同行,则//前也需要),多行注释*后for循环,分号后留有一个空格,前置条件如果有多个,逗号后留一个空格{前一定要有空格空行
以下几种情况需要空行:
换行
换行的地方,行末必须有
,或者运算符。以下几种情况不需要换行:
else,catch,finally{前以下几种情况需要换行:
{后和}前注释
括号
下列关键字后必须有大括号(即使代码块的内容只有一行):
ifelseforwhiledoswitchtrycatchfinally变量
ID在变量名中全大写URL在变量名中全大写Android在变量名中大写第一个字母IOS全部大写对比 ESLint
ESLint 的规则默认都是不启用的状态,官方提供了一个
recommended的规则,详细见 ESLint Rules,从中可以发现:recommended规则大部分都普遍适用,基于这个规则可以更方便的进行选择定制。规范 ESLint 化
基于
recommended规则,根据 ESLint 已有的配置规则,以及上面总结的规范进行自选配置。参考资料
好了,到了扯淡环节了!
在看日本一些番剧的时候,有一个特别深刻的印象:角色主动解说看到的状况。比如 JOJO 里面发动替身技能的时候,总是会有人进行言语上或者心理上的“说明”。这种方式跟实际生活体验很不一样,就好比当你跟别人打架时,你还一边用文字描述说出来别人怎么打你的。虽然说不合常理,但还是有效的调动了部分观看者的情绪,至少对我是有效果的。
那么在平常的生活中,是否也有这样类似的情况:看似不符合常理,但实际却奏效的行为。
我头脑中首先想到的是在读高中的时候,一天晚上下了晚自习,出校门的人很多有些拥挤。但突然间,有一位同学一边走🚶♂️ ,一边大声的说英语 🗣️ ,所到之处,周围的人迅速的让开了道路。当时我也是一愣 😮 。我觉得这种情况就符合,那位同学的英语好不好不太清楚,但至少让他自己很快的通过了拥挤的人群 😁 。
姿态风情万种的 JOJO 。