编写可维护的JavaScript代码风格

编写可维护的JavaScript

结合自己的代码习惯给出推荐的代码风格

一、格式化

  1. 缩进4个空格
  2. 语句结尾分号不要省略
  3. 行的长度不要超过80
  4. 超长换行时,在运算符后换行,下一行增加两个层级的缩进;
callAFuction(document, element, window, “some string value”, true, 123,
		navigator);

如果是赋值,则保持第二行位置与赋值运算符位置对齐

Var result = something + anotherThing + yetAnotherThing + somethingElse + 
		   	 anotherSomethingElse;
  1. 空行
    在方法之间;在方法中的局部变量和第一条语句之间;在多行或单行注释之前;在方法的逻辑片段之间

插入空行,提高可读性。

二、命名

  1. 变量函数:小驼峰式命名, 变量尽量短但要有语义,在名字中体现数据类型,比如count, length, size表示数字类型,name, titile, message表示字符串,i, j, k表示循环变量,避免用foo, bar, tmp此类无意义的命名;函数和方法可用动词表示,比如一些常见前缀can, has, is, get, set;
if (isEnabled()) {
	setName(“Nicholas”);
} 
If (getName() === “Nicholas”) {
	doSomething();
}
  1. 常量,使用大写字母和下划线命名,比如MAX_COUNT, URL
  2. 构造函数,大驼峰命名

三、注释

  1. 代码很清晰时无需注释
  2. 难理解的代码加注释
  3. 可能被误会是错误时加注释

四、块语句

if (condition) {
	doSomething();
}
  1. if后的空格
  2. 即使一行代码也不要省掉{}
  3. {跟在if的一行
  4. 缩进与分号

五、循环

  1. 推荐for循环中尽量用if语句来代替continue的逻辑,更易阅读
  2. for-in循环是用来遍历对象的,不该用来遍历数组

六、变量、函数和运算符

  1. 推荐将所有的变量声明放在函数顶部而不是散落在各个角落
  2. 不推荐在函数内声明函数
  3. 不推荐在语句块内声明函数
  4. doSomething (item); 不推荐,看起来像一个块语句while (item) {…

七、分离html/css/javascript

  1. 不要用Css表达式
  2. 不要在html里写内联Javascript
  3. 不要在javascript中修改css属性,可以修改classname
  4. 不要在javascript中直接修改html,可用模板定义

八、尽量少使用全局变量

九、避免用空比较value !== null

用*typeof, instanceof, Object.prototype.toString.call(value)*来检测值

十、将配置数据从代码中分离出来

  1. URL
  2. 需要展现给用户的字符串
  3. 重复的值
  4. 设置(比如每页的配置项)
  5. 任何可能发生变更的值
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章