良好的代码规范,能够提高代码的可读性,让项目维护更友好。除了自己设定一个规范外,我们也可以借鉴一下现在流行的代码规范,以后我们自己review还起来,能更好地看细节。
Airbnb 是其中一个最流行的 JavaScript 代码规范,它差不多包含所有 JavaScript 的角度。它也是我的个人项目所使用的代码规范。如果你的项目是基于 React 的,那么你可以选择安装 eslint-config-airbnb,或者你可以选择最基本的 eslint-config-airbnb-base。
eslint-config-airbnb 包含 ECMAScript 6 + 以及 React 的 ESLint 代码规范。在安装
的时候,它会一同安装
- eslint-config-airbnb
,
- eslint
,
- eslint-plugin-import
, and
- eslint-plugin-react
。如果你的项目不是 React 的话,那么你可以选择
- eslint-plugin-jsx-a11y
。
- eslint-config-airbnb-base
- npm install eslint - config - airbnb
eslint-config-airbnb-base 包含ECMAScript 6 + 的 ESLint 代码规范。安装它的时候,它会需要
和
- eslint
。
- eslint-plugin-import
- npm install eslint - config - airbnb - base
然后在你的
加入
- .eslintrc
就可以了。
- "extends": "airbnb-base"
Airbnb 的完整代码规范可以在 airbnb/javascript 上阅读。
除了 Airbnb 的代码规范之外,有很多高科技公司在用 Standard 的代码规范,包括但不限于 NPM, Github, mongoDB, ZenDesk。
这里是官网提到的一些 Standard 规范:
·两个空白 - 当作缩排
· 字串用单引号 - 除非要避免跳脱字元
· 没有不必要的变数
· 不要加分号
· 绝对不要用 ( 、 [ 当开头
· 这是不用分号 唯一 可能遇到的问题 - 那就自动帮你检查吧!
· 关键字后加空白 if (condition) { ... }
· 函数名称后加空白 function name (arg) { ... }
· 统一用 === 取代 == - 但是 obj == null 可以用来检查 null || undefined。
· 一定要例外处理 node.js 中的 err 参数
· 一定要对浏览器中的全域变数加上 window 前綴 - 除了 document 和 navigator 可以不用
· 避免使用那些命名得很烂的全域变数,像是 open 、 length 、 event 和 name。
你可以透过
来自动校对,改善你的代码。
- eslint-config-standard
- npm install eslint - config - standard
Standard 繁體中文文档 Standard 简体中文文档
它的思想是无论谁改进项目的代码,都应该像只有一个人写代码。
你可以透过 eslint-config-idiomatic 来自动校对,改善你的代码。
- npm install eslint - config - idiomatic
Idiomatic - Github
备注:
use version ^3.0.0 for ESLint version ^3.x.x. use version ^2.0.0 for ESLint version ^2.x.x. use version ^1.0.0 for ESLint version ^1.x.x.
在你的 .eslintrc 内输入:
- Idiomatic - Github
- 备注:
- use version ^3.0.0 for ESLint version ^3.x.x. use version ^2.0.0 for ESLint version ^2.x.x. use version ^1.0.0 for ESLint version ^1.x.x.
- 在你的 .eslintrc 内输入:
你都可以像 Google 工程师一样编写同样风格的代码。
你可以透过 eslint-config-google 来自动校对,改善你的代码。
- npm install eslint eslint - config - google
我们可以在 Google - GitHub Pages 上阅读它的代码规范。
如果你想要帮助 jQuery 改善它的代码的话,你可以在 jQuery 的官网 上阅读它的代码规范。
自从看了《Clean Code》一书之后,我感觉写代码不只是一种手艺,還是艺术。可能你看过去感觉都是 JavaScript,但是读著读著一些开源项目,就会感受到代码可以有多么优雅,同时可以有多么不雅。。。为了减少他人说 WTF 的机会,我们还是研究一下如何把自己的代码变得更加优雅吧。
如果你是第一次使用 JavaScript 代码规范的话,那么你可以选择 Airbnb 作为你的代码规范。Airbnb 的文档可阅性是不错的,而且把现有项目加上 eslint 也不是什么难事。
如果要仔细地说代码规范的好处,重要性的话,我们可以在下一篇文章讨论。
1. Clean Code 电子书
2. 5 JavaScript Style Guides — Including AirBnB, GitHub, & Google
来源: http://www.evgetedu.com/post/464.html