-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCodeFormat
50 lines (38 loc) · 1.69 KB
/
CodeFormat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Code conventions
变量名,名词;
函数名,以动词开始;
返回bool的函数,以is开头;
定义一个变量后要进行初始化,暗示,以后的操作的类型;
// 初始化指定变量类型;
var count = -1;
var found = false;
var name = "";
var person = null;
松散耦合
解耦HTML 和 javascript
解耦CSS和javascript, javascript 可以修改样式类,但不要直接修改样式
解耦应用逻辑和事件处理程序
勿将event对象传递出去,值传递来自event对象中的所需的数据;
任何在应用层面的动作,都可以在不执行任何事件处理程序的情况下进行;
任何事件处理程序都应处理事件,然后将处理转交给应用逻辑;
编程实践:
尊重对象所有权
不要为实例或原型添加,属性和方法,
不要重新定义已经存在的方法;
永远不要修改非你所拥有的对象;
避免全局量,使用命名空间;
避免与null进行比较;
使用常量;(重复的值,用户界面的字符串, URLs, 任何可能会在未来进行改变的值)
注意作用域
避免全局查找;
避免使用with语句;
避免不必要的属性查找;一旦多次用到对象属性,就要将其保存在局部变量中;
性能的注意事项:
原生方法较快
switch语句较快;
位运算较快;
最小化语句个数,(多变量声明,插入迭代值,)
var i, j , h;
var name = value[i++]
使用数组和对象字面量,(尽可能使用这两种方式消除不必要的语句)
使用事件代理;