以下编码风格来自于《编写可维护的 javascript》一书中,加上个人总结,自代表个人风格,仅供参考。
缩进
缩进可以采用2格缩进或者4格缩进,具体使用哪个看团队的代码规范和自己的爱好。
行尾分号
行尾一律加上;
分号,除非该行需要折行。
行的长度
单行不应该超过80个字符,如果超过,应该折行编写。
折行
当一行长度达到单行最大字符限制时,手动将一行拆成两行。遵守:
- 在运算符后换行
- 下一行增加两层缩进
callAFunction(argument1, argument2, argument3, argument4, argument5, argument6,
argument7);
空行
一段代码的语义和另一段代码不相关,这时就应该使用空格将它们分隔开来。
命名
- 常量
常量使用大写字母和下划线命名。
var MAX_COUNT = 10;
var URL = 'http://www.google.com/';
- 普通变量和函数
遵守驼峰大小写命名法。变量以名词作为前缀,函数以动词作为前缀。
var myName = 'Tom';
function getName() {
return myName;
}
动词常见约定:
- 构造函数
构造函数首字母应该大写。
function Person(name) {
this.name = name;
}
var me = Person('Tom');
基本类型的表示
- 字符串
普通字符串采用'
单引号包裹,json 对象中的字符串采用双引号包裹。
var name = 'Tom';
var me = {
name: "Tom",
age: 23
}
- 数字
书写完整,不要省去整数部分或小数部分,不要使用八进制写法。 - null
不要使用null
来检查是否传入了某个参数;不要用null
来检查一个未初始化的变量。 - undefined
尽量避免在代码中使用undefined
,如果要判断一个变量是否存在可以这样:
if(name === null || typeof(name) === 'undefined') {
// ..
}
- 对象
采用对象字面量的方式定义对象:
var me = {
name: "Tom",
age: 23
}
- 数组
采用数组字面量的方式定义数组:
var colors = ['red', 'green', 'blue'];
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。